diff --git a/findutils-automake-1.12.patch b/findutils-automake-1.12.patch new file mode 100644 index 0000000..04d4bff --- /dev/null +++ b/findutils-automake-1.12.patch @@ -0,0 +1,13 @@ +Index: findutils-4.5.10/configure.ac +=================================================================== +--- findutils-4.5.10.orig/configure.ac ++++ findutils-4.5.10/configure.ac +@@ -77,8 +77,6 @@ AC_PROG_CPP + dnl for gnulib + gl_EARLY + +-AM_C_PROTOTYPES +- + AC_PROG_INSTALL + AC_PROG_RANLIB + dnl AC_PROG_LIBTOOL diff --git a/findutils-init_stat_buf.patch b/findutils-init_stat_buf.patch new file mode 100644 index 0000000..54fc0d8 --- /dev/null +++ b/findutils-init_stat_buf.patch @@ -0,0 +1,28 @@ +From: Philipp Thomas +Date: 2012-11-13 11:58:38+01:00 +Subject: Find by inode fails because of uninitialized structure +References: bnc#780928 +Upstream: http://savannah.gnu.org/bugs/?37683 + +stat_buf in find.c(process_path) wasn't initialized and always contained the +inode no. of the first file. util.c(get_info) then thought it already +had the inode information and the following comparison in pred.c(pred_inum) in +fails of cause. + + +--- + find/find.c | 1 + + 1 file changed, 1 insertion(+) + +Index: find/find.c +=================================================================== +--- find/find.c.orig 2011-04-04 00:53:11.000000000 +0200 ++++ find/find.c 2012-11-13 11:57:46.161844128 +0100 +@@ -1131,6 +1131,7 @@ process_path (char *pathname, char *name + + eval_tree = get_eval_tree (); + /* Assume it is a non-directory initially. */ ++ memset(&stat_buf,'\0',sizeof(stat_buf)); + stat_buf.st_mode = 0; + state.rel_pathname = name; + state.type = 0; diff --git a/findutils.changes b/findutils.changes index bbec9de..8807073 100644 --- a/findutils.changes +++ b/findutils.changes @@ -1,3 +1,13 @@ +------------------------------------------------------------------- +Thu Nov 15 13:32:47 CET 2012 - pth@suse.de + +- Initialize stat_buf in find.c(process_path) so that find by inum + works (bnc#780928 http://savannah.gnu.org/bugs/?37683) + findutils-init_stat_buf.patch. +- Exclude /.snapshot from updatedb's indexing (bnc#780918) + No patch, change was done in the sysconfig file of this package. +- Rename automake-1.12.patch to findutils-automake-1.12.patch + ------------------------------------------------------------------- Thu Jul 26 07:24:20 UTC 2012 - aj@suse.de diff --git a/findutils.spec b/findutils.spec index d73f161..00a8ab8 100644 --- a/findutils.spec +++ b/findutils.spec @@ -35,7 +35,9 @@ Patch1: findutils-4.4.2-xautofs.patch Patch2: findutils-4.4.2-updatedb.patch Patch3: findutils-4.5.10-prune_unknown.patch Patch4: findutils-4.5.10-updatedb_ignore_nfsv4.patch -Patch5: findutils-stdio.in.patch +Patch5: findutils-automake-1.12.patch +Patch6: findutils-stdio.in.patch +Patch7: findutils-init_stat_buf.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %if 0%{?suse_version} > 1100 BuildRequires: libselinux-devel @@ -83,6 +85,8 @@ switching on the computer. %patch3 %patch4 %patch5 -p1 +%patch6 -p1 +%patch7 %build %ifarch %arm armv5tel armv7l armv7el armv5el diff --git a/sysconfig.locate b/sysconfig.locate index 1074a75..e6fafca 100644 --- a/sysconfig.locate +++ b/sysconfig.locate @@ -30,12 +30,12 @@ RUN_UPDATEDB_AS=nobody UPDATEDB_NETPATHS="" ## Type: string -## Default: "/mnt /cdrom /tmp /usr/tmp /var/tmp /var/spool /proc /media /sys" +## Default: "/mnt /cdrom /tmp /usr/tmp /var/tmp /var/spool /proc /media /sys /.snapshot" # # uptdatedb can skip directories for its database. The following parameter # says which ones. # -UPDATEDB_PRUNEPATHS="/mnt /cdrom /tmp /usr/tmp /var/tmp /var/spool /proc /media /sys" +UPDATEDB_PRUNEPATHS="/mnt /cdrom /tmp /usr/tmp /var/tmp /var/spool /proc /media /sys /.snapshot" ## Type: string("",nobody) ## Default: ""