rpms/findutils/F-12 findutils-4.5.8-0006-Fix-Savannah-bug-29949.patch, NONE, 1.1 findutils-4.5.8-0002-7dc7006.patch, 1.3, 1.4 findutils-4.5.8-0003-27a7e45.patch, 1.1, 1.2 findutils-4.5.8-0004-e1d0a99.patch, 1.1, 1.2 findutils-4.5.8-0005-a1f5402.patch, 1.1, 1.2 findutils.spec, 1.70, 1.71

Kamil Dudka kdudka at fedoraproject.org
Tue Jun 1 10:46:26 UTC 2010


Author: kdudka

Update of /cvs/extras/rpms/findutils/F-12
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv9115

Modified Files:
	findutils-4.5.8-0002-7dc7006.patch 
	findutils-4.5.8-0003-27a7e45.patch 
	findutils-4.5.8-0004-e1d0a99.patch 
	findutils-4.5.8-0005-a1f5402.patch findutils.spec 
Added Files:
	findutils-4.5.8-0006-Fix-Savannah-bug-29949.patch 
Log Message:
- fix Savannah bug #29949

findutils-4.5.8-0006-Fix-Savannah-bug-29949.patch:
 ChangeLog                                    |    9 +++++++++
 NEWS                                         |    2 ++
 find/pred.c                                  |   10 ++++------
 find/testsuite/find.gnu/execdir-multiple.exp |    1 +
 4 files changed, 16 insertions(+), 6 deletions(-)

--- NEW FILE findutils-4.5.8-0006-Fix-Savannah-bug-29949.patch ---
 ChangeLog                                    |    9 +++++++++
 NEWS                                         |    2 ++
 find/pred.c                                  |   10 ++++------
 find/testsuite/find.gnu/execdir-multiple.exp |    1 +
 4 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 5702e66..97b1b7c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2010-05-24  Kamil Dudka  <kdudka at redhat.com>
+
+	Fix Savannah bug #29949, -execdir does not change working directory
+	* find/pred.c (record_exec_dir): Do not throw the execdir when not
+	working in the cumulative mode.
+	* find/testsuite/find.gnu/execdir-multiple.exp: Add a test-case for
+	the bug #29949.
+	* NEWS: Mention this bugfix.
+
 2010-04-11  James Youngman  <jay at gnu.org>
 
 	Add a test case for Savannah bug 27563 (-L breaks -execdir).
diff --git a/NEWS b/NEWS
index c8eb0bc..2ba2111 100644
--- a/NEWS
+++ b/NEWS
@@ -4,6 +4,8 @@ GNU findutils NEWS - User visible changes.	-*- outline -*- (allout)
 
 ** Bug Fixes
 
+#29949: find -execdir does not change working directory
+
 #27563: -L breaks -execdir
 
 #19593: -execdir .... {} + has suboptimal performance (see below)
diff --git a/find/pred.c b/find/pred.c
index cf25184..cac74d1 100644
--- a/find/pred.c
+++ b/find/pred.c
@@ -558,13 +558,11 @@ initialise_wd_for_exec (struct exec_val *execp, int cwd_fd, const char *dir)
 static boolean
 record_exec_dir (struct exec_val *execp)
 {
-  if (!execp->wd_for_exec)
+  /* working directory not already known, so must be a *dir variant,
+     and this must be the first arg we added.   However, this may
+     be -execdir foo {} \; (i.e. not multiple).  */
+  if (!execp->state.todo)
     {
-      /* working directory not already known, so must be a *dir variant,
-	 and this must be the first arg we added.   However, this may
-	 be -execdir foo {} \; (i.e. not multiple).  */
-      assert (!execp->state.todo);
-
       /* Record the WD. If we're using -L or fts chooses to do so for
 	 any other reason, state.cwd_dir_fd may in fact not be the
 	 directory containing the target file.  When this happens,
diff --git a/find/testsuite/find.gnu/execdir-multiple.exp b/find/testsuite/find.gnu/execdir-multiple.exp
index 6d4bd66..495b93b 100644
--- a/find/testsuite/find.gnu/execdir-multiple.exp
+++ b/find/testsuite/find.gnu/execdir-multiple.exp
@@ -49,6 +49,7 @@ if { [ safe_path ] } {
     }
 
     set SKIP_OLD 1
+    find_start p {tmp -type f -empty -execdir sh ./runme \{\} \; } ""
     find_start p {tmp -type f -empty -execdir sh ./runme  \{\} + } ""
     set SKIP_OLD 0
     exec rm -rf tmp

findutils-4.5.8-0002-7dc7006.patch:
 ChangeLog            |   83 ++++++++++++++++++++++++++++++++++++++++++++++
 find/defs.h          |   14 +++----
 find/find.c          |   69 +++++---------------------------------
 find/finddata.c      |   12 +-----
 find/ftsfind.c       |   49 +--------------------------
 find/parser.c        |   35 ++++++-------------
 find/pred.c          |   92 +++++++++++++++++++++++++++++++++------------------
 find/util.c          |   89 +++++++++++++++++++++++++++++++++++++++----------
 import-gnulib.config |    1 
 lib/dircallback.c    |   36 +++++++++++++++++++
 lib/dircallback.h    |    5 ++
 lib/listfile.c       |    2 -
 12 files changed, 291 insertions(+), 196 deletions(-)

Index: findutils-4.5.8-0002-7dc7006.patch
===================================================================
RCS file: /cvs/extras/rpms/findutils/F-12/findutils-4.5.8-0002-7dc7006.patch,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -p -r1.3 -r1.4
--- findutils-4.5.8-0002-7dc7006.patch	10 May 2010 15:48:44 -0000	1.3
+++ findutils-4.5.8-0002-7dc7006.patch	1 Jun 2010 10:46:24 -0000	1.4
@@ -1,4 +1,4 @@
- ChangeLog            |   85 ++++++++++++++++++++++++++++++++++++++++++++++
+ ChangeLog            |   83 +++++++++++++++++++++++++++++++++++++++++++++
  find/defs.h          |   14 ++++----
  find/find.c          |   69 +++++--------------------------------
  find/finddata.c      |   12 +-----
@@ -10,99 +10,97 @@
  lib/dircallback.c    |   36 +++++++++++++++++++-
  lib/dircallback.h    |    5 ++-
  lib/listfile.c       |    2 +-
- 12 files changed, 293 insertions(+), 196 deletions(-)
+ 12 files changed, 291 insertions(+), 196 deletions(-)
 
 diff --git a/ChangeLog b/ChangeLog
-index 34552d5..f040627 100644
+index 34552d5..fefc1b8 100644
 --- a/ChangeLog
 +++ b/ChangeLog
-@@ -1,5 +1,90 @@
+@@ -1,5 +1,88 @@
  2010-04-10  James Youngman  <jay at gnu.org>
  
-+        Exec predicates now store which directory they want to run in.
-+        * lib/dircallback.c (run_in_dirfd): New name for old run_in_dir
-+        function.
-+        (run_in_dir): Like the old function of the same name, but now
-+        takes an argument const struct saved_cwd *.
-+        * lib/dircallback.h: Update declarations of run_in_dirfd and
-+        run_in_dir.
-+        * find/util.c: Include dircallback.h, xalloc.h, save-cwd.h.
-+        (do_complete_pending_execdirs): Remove dir_fd parameter, since the
-+        per-predicate data structures now indicate what directory they
-+        need to be run in.  Instead of calling bc_do_exec directly, use a
-+        callback 'exec_cb' that uses run_in_dir (which now takes a
-+        saved_cwd* parameter instead of a file descriptor).
-+        (do_exec): Called by do_complete_pending_execdirs, and simply uses
-+        run_in_dir to call exec_cb, restoring the working directory
-+        afterward.
-+        (record_initial_cwd): New function, initialises the global
-+        variable initial_wd.
-+        (cleanup_initial_cwd): New function, cleans up the global variable
-+        initial_wd.
-+        (cleanup): Call cleanup_initial_cwd.
-+        (get_start_dirfd): Remove.
-+        (is_exec_in_local_dir): New function; true for predicates -execdir
-+        and -okdir.
-+        * find/pred.c: Include save-cwd.h.
-+        (record_exec_dir): New function, sets the value of
-+        execp->wd_for_exec if needed.
-+        (new_impl_pred_exec): Remove the obsolete dir_fd parameter.  Call
-+        record_exec_dir.
-+        (pred_exec): Don't pass the dir_fd parameter.
-+        (pred_execdir): Likewise.
-+        (pred_ok): Likewise.
-+        (pred_okdir): Likewise.
-+        (can_access): Call run_in_dirfd rather than run_in_dir (the
-+        function was renamed).
-+        (prep_child_for_exec): Remove dir_fd parameter; don't fchdir to
-+        that.  Call restore_cwd instead (passing a saved_cwd* parameter
-+        which replaced dir_fd).
-+        (launch): Remove references to execp->use_current_dir.
-+        (launch): Change references to execp->dir_fd to execp->wd_for_exec.
-+        * find/parser.c: Correct indentiation of declaration of
-+        insert_exec_ok and remove the obsolete dir_fd parameter.
-+        (parse_exec): Don't pass the dir_fd parameter to insert_exec_ok.
-+        (parse_execdir): Likewise.
-+        (parse_ok): Likewise.
-+        (parse_okdir): Likewise.
-+        (insert_exec_ok): Remove obsolete dir_fd paramter.  Initialise
-+        execp->wd_for_exec, either to NULL (for -*dir) or to the
-+        initial_wd.
-+        * find/ftsfind.c: Remove get_current_dirfd.  Remove
-+        complete_execdirs_cb.
-+        (consider_visiting): Call complete_pending_execdirs directly.
-+        (main): Call record_initial_cwd to record the initial working
-+        directory, early on.  Don't initialise starting_dir or
-+        starting_desc, they have been removed.
-+        * find/finddata.c: Include save-cwd.h.  Remove starting_dir and
-+        starting_desc. Add new global variable initial_wd.  It is a struct
-+        saved_wd* and represents find's initial working directory.
-+        * find/find.c: Include save-cwd.h.
-+        (main): Call record_initial_cwd in order to initialise the
-+        global variable initial_wd  Don't set starting_desc and
-+        starting_dir, since those variables have been removed.
-+        (safely_chdir): Don't pass an fd to complete_pending_execdirs.
-+        (chdir_back): Remove the safety check (since we are using fchdir
-+        and in any case no longer have all the data that the existing
-+        wd_sanity_check function wants).
-+        (do_process_top_dir): Don't pass an fd to
-+        complete_pending_execdirs.
-+        (process_dir): Likewise.
-+        * find/defs.h (struct exec_val): Remove use_current_dir and
-+        dir_fd.  Replace with wd_for_exec, which is a struct saved_wd*.
-+        (get_start_dirfd): Remove prototype.
-+        (get_current_dirfd): Remove prototype.
-+        (complete_pending_execdirs): No longer takes dir_fd parameter.
-+        (record_initial_cwd): Add prototype.
-+        (is_exec_in_local_dir): Add prototype.
-+        (options): Declare.
-+        (initial_wd): Add declaration.  It is a struct saved_wd* and
-+        represents find's initial working directory.
-+        (starting_dir): Remove declaration of global variable.
-+        (starting_desc): Remove declaration of global variable.
-+        * import-gnulib.config (modules): Import module save-cwd.
-+
-+2010-04-10  James Youngman  <jay at gnu.org>
++	Exec predicates now store which directory they want to run in.
++	* lib/dircallback.c (run_in_dirfd): New name for old run_in_dir
++	function.
++	(run_in_dir): Like the old function of the same name, but now
++	takes an argument const struct saved_cwd *.
++	* lib/dircallback.h: Update declarations of run_in_dirfd and
++	run_in_dir.
++	* find/util.c: Include dircallback.h, xalloc.h, save-cwd.h.
++	(do_complete_pending_execdirs): Remove dir_fd parameter, since the
++	per-predicate data structures now indicate what directory they
++	need to be run in.  Instead of calling bc_do_exec directly, use a
++	callback 'exec_cb' that uses run_in_dir (which now takes a
++	saved_cwd* parameter instead of a file descriptor).
++	(do_exec): Called by do_complete_pending_execdirs, and simply uses
++	run_in_dir to call exec_cb, restoring the working directory
++	afterward.
++	(record_initial_cwd): New function, initialises the global
++	variable initial_wd.
++	(cleanup_initial_cwd): New function, cleans up the global variable
++	initial_wd.
++	(cleanup): Call cleanup_initial_cwd.
++	(get_start_dirfd): Remove.
++	(is_exec_in_local_dir): New function; true for predicates -execdir
++	and -okdir.
++	* find/pred.c: Include save-cwd.h.
++	(record_exec_dir): New function, sets the value of
++	execp->wd_for_exec if needed.
++	(new_impl_pred_exec): Remove the obsolete dir_fd parameter.  Call
++	record_exec_dir.
++	(pred_exec): Don't pass the dir_fd parameter.
++	(pred_execdir): Likewise.
++	(pred_ok): Likewise.
++	(pred_okdir): Likewise.
++	(can_access): Call run_in_dirfd rather than run_in_dir (the
++	function was renamed).
++	(prep_child_for_exec): Remove dir_fd parameter; don't fchdir to
++	that.  Call restore_cwd instead (passing a saved_cwd* parameter
++	which replaced dir_fd).
++	(launch): Remove references to execp->use_current_dir.
++	(launch): Change references to execp->dir_fd to execp->wd_for_exec.
++	* find/parser.c: Correct indentiation of declaration of
++	insert_exec_ok and remove the obsolete dir_fd parameter.
++	(parse_exec): Don't pass the dir_fd parameter to insert_exec_ok.
++	(parse_execdir): Likewise.
++	(parse_ok): Likewise.
++	(parse_okdir): Likewise.
++	(insert_exec_ok): Remove obsolete dir_fd paramter.  Initialise
++	execp->wd_for_exec, either to NULL (for -*dir) or to the
++	initial_wd.
++	* find/ftsfind.c: Remove get_current_dirfd.  Remove
++	complete_execdirs_cb.
++	(consider_visiting): Call complete_pending_execdirs directly.
++	(main): Call record_initial_cwd to record the initial working
++	directory, early on.  Don't initialise starting_dir or
++	starting_desc, they have been removed.
++	* find/finddata.c: Include save-cwd.h.  Remove starting_dir and
++	starting_desc. Add new global variable initial_wd.  It is a struct
++	saved_wd* and represents find's initial working directory.
++	* find/find.c: Include save-cwd.h.
++	(main): Call record_initial_cwd in order to initialise the
++	global variable initial_wd  Don't set starting_desc and
++	starting_dir, since those variables have been removed.
++	(safely_chdir): Don't pass an fd to complete_pending_execdirs.
++	(chdir_back): Remove the safety check (since we are using fchdir
++	and in any case no longer have all the data that the existing
++	wd_sanity_check function wants).
++	(do_process_top_dir): Don't pass an fd to
++	complete_pending_execdirs.
++	(process_dir): Likewise.
++	* find/defs.h (struct exec_val): Remove use_current_dir and
++	dir_fd.  Replace with wd_for_exec, which is a struct saved_wd*.
++	(get_start_dirfd): Remove prototype.
++	(get_current_dirfd): Remove prototype.
++	(complete_pending_execdirs): No longer takes dir_fd parameter.
++	(record_initial_cwd): Add prototype.
++	(is_exec_in_local_dir): Add prototype.
++	(options): Declare.
++	(initial_wd): Add declaration.  It is a struct saved_wd* and
++	represents find's initial working directory.
++	(starting_dir): Remove declaration of global variable.
++	(starting_desc): Remove declaration of global variable.
++	* import-gnulib.config (modules): Import module save-cwd.
 +
  	Add a test which checks $CWD for find -execdir {} +/;
  	* find/testsuite/find.gnu/execdir-multiple.exp: New test; verifies
@@ -506,7 +504,7 @@ index 3f237eb..b96d317 100644
  /* Get a timestamp and comparison type.
  
 diff --git a/find/pred.c b/find/pred.c
-index 7c34119..9273bba 100644
+index 7c34119..d057d48 100644
 --- a/find/pred.c
 +++ b/find/pred.c
 @@ -47,6 +47,7 @@
@@ -572,7 +570,7 @@ index 7c34119..9273bba 100644
 +    }
 +  else
 +    {
-+      /* For the others (-exec, -ok), the parder should
++      /* For the others (-exec, -ok), the parser should
 +	 have set wd_for_exec to initial_wd, indicating
 +	 that the exec should take place from find's initial
 +	 working directory.

findutils-4.5.8-0003-27a7e45.patch:
 ChangeLog      |   10 ++++++++++
 NEWS           |   15 +++++++++++++++
 find/ftsfind.c |   37 +++++++++++++++++++------------------
 3 files changed, 44 insertions(+), 18 deletions(-)

Index: findutils-4.5.8-0003-27a7e45.patch
===================================================================
RCS file: /cvs/extras/rpms/findutils/F-12/findutils-4.5.8-0003-27a7e45.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- findutils-4.5.8-0003-27a7e45.patch	6 May 2010 15:09:17 -0000	1.1
+++ findutils-4.5.8-0003-27a7e45.patch	1 Jun 2010 10:46:25 -0000	1.2
@@ -1,10 +1,10 @@
  ChangeLog      |   10 ++++++++++
- NEWS           |   13 +++++++++++++
+ NEWS           |   15 +++++++++++++++
  find/ftsfind.c |   37 +++++++++++++++++++------------------
- 3 files changed, 42 insertions(+), 18 deletions(-)
+ 3 files changed, 44 insertions(+), 18 deletions(-)
 
 diff --git a/ChangeLog b/ChangeLog
-index 555caab..26d4be3 100644
+index fefc1b8..98d7962 100644
 --- a/ChangeLog
 +++ b/ChangeLog
 @@ -1,5 +1,15 @@
@@ -20,14 +20,18 @@ index 555caab..26d4be3 100644
 +	before we've finished with the current directory).
 +	* NEWS: Mention this change.
 +
-         Exec predicates now store which directory they want to run in.
-         * lib/dircallback.c (run_in_dirfd): New name for old run_in_dir
-         function.
+ 	Exec predicates now store which directory they want to run in.
+ 	* lib/dircallback.c (run_in_dirfd): New name for old run_in_dir
+ 	function.
 diff --git a/NEWS b/NEWS
-index 6b8b725..757ffd8 100644
+index 6b8b725..569ff51 100644
 --- a/NEWS
 +++ b/NEWS
-@@ -1,3 +1,16 @@
+@@ -1,5 +1,20 @@
+ GNU findutils NEWS - User visible changes.	-*- outline -*- (allout)
+ 
++* Major changes in release 4.4.3-git, YYYY-MM-DD
++
 +** Bug Fixes
 +
 +#19593: -execdir .... {} + has suboptimal performance (see below)
@@ -41,9 +45,9 @@ index 6b8b725..757ffd8 100644
 +arguments, since an exec will occur each time find encounters a
 +subdirectory (if at least one argument is pending).
 +
- GNU findutils NEWS - User visible changes.	-*- outline -*- (allout)
- 
  * Major changes in release 4.4.2, 2009-11-26
+ 
+ ** Functional Enhancements to find
 diff --git a/find/ftsfind.c b/find/ftsfind.c
 index 9945abd..3c9ae1d 100644
 --- a/find/ftsfind.c

findutils-4.5.8-0004-e1d0a99.patch:
 ChangeLog   |   21 +++++++++
 NEWS        |    2 
 find/pred.c |  133 +++++++++++++++++++++++++++++++++++++++++++++++++-----------
 3 files changed, 132 insertions(+), 24 deletions(-)

Index: findutils-4.5.8-0004-e1d0a99.patch
===================================================================
RCS file: /cvs/extras/rpms/findutils/F-12/findutils-4.5.8-0004-e1d0a99.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- findutils-4.5.8-0004-e1d0a99.patch	6 May 2010 15:09:17 -0000	1.1
+++ findutils-4.5.8-0004-e1d0a99.patch	1 Jun 2010 10:46:25 -0000	1.2
@@ -1,18 +1,19 @@
- ChangeLog   |   20 +++++++++
+ ChangeLog   |   21 +++++++++
  NEWS        |    2 +
- find/pred.c |  135 ++++++++++++++++++++++++++++++++++++++++++++++++-----------
- 3 files changed, 132 insertions(+), 25 deletions(-)
+ find/pred.c |  133 ++++++++++++++++++++++++++++++++++++++++++++++++-----------
+ 3 files changed, 132 insertions(+), 24 deletions(-)
 
 diff --git a/ChangeLog b/ChangeLog
-index b6a0c6c..e796142 100644
+index 98d7962..8e5d0ce 100644
 --- a/ChangeLog
 +++ b/ChangeLog
-@@ -1,3 +1,23 @@
+@@ -1,3 +1,24 @@
 +2010-04-11  James Youngman  <jay at gnu.org>
 +
 +	Fix Savannah bug #27563, -L breaks -execdir.
-+	* find/pred.c (initialise_wd_for_exec): New function, factoring
-+	out part of the body of record_exec_dir.
++	* find/pred.c (mdir_name): New function, taken from newer gnulib.
++	(initialise_wd_for_exec): New function, factoring out part of the body
++	of record_exec_dir.
 +	(record_exec_dir): If state.rel_pathname contains a /, extract the
 +	directory part and initialise execp->wd_for_exec to point at that
 +	directory.
@@ -32,10 +33,11 @@ index b6a0c6c..e796142 100644
  
  	Fix Savannah bug #19593, -execdir .... {} + has suboptimal performance
 diff --git a/NEWS b/NEWS
-index 4dcffa7..7f972eb 100644
+index 569ff51..c8eb0bc 100644
 --- a/NEWS
 +++ b/NEWS
-@@ -1,5 +1,7 @@
+@@ -4,6 +4,8 @@ GNU findutils NEWS - User visible changes.	-*- outline -*- (allout)
+ 
  ** Bug Fixes
  
 +#27563: -L breaks -execdir
@@ -44,7 +46,7 @@ index 4dcffa7..7f972eb 100644
  
  ** Performance changes
 diff --git a/find/pred.c b/find/pred.c
-index 9273bba..cf25184 100644
+index d057d48..cf25184 100644
 --- a/find/pred.c
 +++ b/find/pred.c
 @@ -504,6 +504,57 @@ pred_empty (const char *pathname, struct stat *stat_buf, struct predicate *pred_
@@ -164,7 +166,7 @@ index 9273bba..cf25184 100644
      {
        /* For -execdir/-okdir predicates, the parser did not fill in
  	 the wd_for_exec member of sturct exec_val.  So for those
-@@ -550,15 +618,30 @@ new_impl_pred_exec (const char *pathname,
+@@ -550,6 +618,18 @@ new_impl_pred_exec (const char *pathname,
  		 safely_quote_err_filename (0, pathname));
  	  /*NOTREACHED*/
  	}
@@ -183,10 +185,7 @@ index 9273bba..cf25184 100644
      }
    else
      {
--      /* For the others (-exec, -ok), the parder should
-+      /* For the others (-exec, -ok), the parser should
- 	 have set wd_for_exec to initial_wd, indicating
- 	 that the exec should take place from find's initial
+@@ -559,6 +639,9 @@ new_impl_pred_exec (const char *pathname,
  	 working directory.
        */
        assert (execp->wd_for_exec == initial_wd);

findutils-4.5.8-0005-a1f5402.patch:
 ChangeLog                                        |   11 +++++++++++
 find/testsuite/Makefile.am                       |    4 ++++
 find/testsuite/find.gnu/sv-bug-27563-execdir.exp |    6 ++++++
 find/testsuite/find.gnu/sv-bug-27563-execdir.xo  |    1 +
 find/testsuite/find.posix/sv-bug-27563-exec.exp  |    6 ++++++
 find/testsuite/find.posix/sv-bug-27563-exec.xo   |    1 +
 6 files changed, 29 insertions(+)

Index: findutils-4.5.8-0005-a1f5402.patch
===================================================================
RCS file: /cvs/extras/rpms/findutils/F-12/findutils-4.5.8-0005-a1f5402.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- findutils-4.5.8-0005-a1f5402.patch	6 May 2010 15:09:17 -0000	1.1
+++ findutils-4.5.8-0005-a1f5402.patch	1 Jun 2010 10:46:25 -0000	1.2
@@ -1,16 +1,16 @@
- ChangeLog                                        |   13 +++++++++++++
+ ChangeLog                                        |   11 +++++++++++
  find/testsuite/Makefile.am                       |    4 ++++
  find/testsuite/find.gnu/sv-bug-27563-execdir.exp |    6 ++++++
  find/testsuite/find.gnu/sv-bug-27563-execdir.xo  |    1 +
  find/testsuite/find.posix/sv-bug-27563-exec.exp  |    6 ++++++
  find/testsuite/find.posix/sv-bug-27563-exec.xo   |    1 +
- 6 files changed, 31 insertions(+), 0 deletions(-)
+ 6 files changed, 29 insertions(+), 0 deletions(-)
 
 diff --git a/ChangeLog b/ChangeLog
-index e796142..f42aa7a 100644
+index 8e5d0ce..5702e66 100644
 --- a/ChangeLog
 +++ b/ChangeLog
-@@ -1,5 +1,18 @@
+@@ -1,5 +1,16 @@
  2010-04-11  James Youngman  <jay at gnu.org>
  
 +	Add a test case for Savannah bug 27563 (-L breaks -execdir).
@@ -24,13 +24,11 @@ index e796142..f42aa7a 100644
 +	* find/testsuite/find.gnu/sv-bug-27563-execdir.xo: Expected output.
 +	* find/testsuite/find.posix/sv-bug-27563-exec.xo: Expected output.
 +
-+2010-04-11  James Youngman  <jay at gnu.org>
-+
  	Fix Savannah bug #27563, -L breaks -execdir.
- 	* find/pred.c (initialise_wd_for_exec): New function, factoring
- 	out part of the body of record_exec_dir.
+ 	* find/pred.c (mdir_name): New function, taken from newer gnulib.
+ 	(initialise_wd_for_exec): New function, factoring out part of the body
 diff --git a/find/testsuite/Makefile.am b/find/testsuite/Makefile.am
-index 1447132..2e661d9 100644
+index 1447132..aa32d4b 100644
 --- a/find/testsuite/Makefile.am
 +++ b/find/testsuite/Makefile.am
 @@ -63,6 +63,7 @@ find.gnu/samefile-same.xo \
@@ -53,7 +51,7 @@ index 1447132..2e661d9 100644
  find.gnu/sv-bug-17782.exp \
  find.gnu/sv-bug-18222.exp \
  find.gnu/sv-bug-24169.exp \
-+find.gnu/sv-bug-25359-execdir.exp \
++find.gnu/sv-bug-27563-execdir.exp \
  find.gnu/quit.exp \
  find.gnu/used-invarg.exp \
  find.gnu/used-missing.exp \
@@ -61,7 +59,7 @@ index 1447132..2e661d9 100644
  find.posix/mtime0.exp \
  find.posix/sv-bug-11175.exp \
  find.posix/sv-bug-12181.exp \
-+find.posix/sv-bug-25359-exec.exp \
++find.posix/sv-bug-27563-exec.exp \
  find.posix/depth1.exp \
  find.posix/sizes.exp \
  find.posix/name.exp \


Index: findutils.spec
===================================================================
RCS file: /cvs/extras/rpms/findutils/F-12/findutils.spec,v
retrieving revision 1.70
retrieving revision 1.71
diff -u -p -r1.70 -r1.71
--- findutils.spec	10 May 2010 15:48:44 -0000	1.70
+++ findutils.spec	1 Jun 2010 10:46:25 -0000	1.71
@@ -1,7 +1,7 @@
 Summary: The GNU versions of find utilities (find and xargs)
 Name: findutils
 Version: 4.4.2
-Release: 7%{?dist}
+Release: 8%{?dist}
 Epoch: 1
 License: GPLv3+
 Group: Applications/File
@@ -30,6 +30,9 @@ Patch10: findutils-4.5.8-0004-e1d0a99.pa
 # backport of upstream commit a1f54022d1913a92ccb728211127d5c238397eb6
 Patch11: findutils-4.5.8-0005-a1f5402.patch
 
+# Fix Savannah bug #29949, -execdir does not change working directory
+Patch12: findutils-4.5.8-0006-Fix-Savannah-bug-29949.patch
+
 Requires(post): /sbin/install-info
 Requires(preun): /sbin/install-info
 Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -61,6 +64,7 @@ useful for finding things on your system
 %patch9 -p1
 %patch10 -p1
 %patch11 -p1
+%patch12 -p1
 
 autoreconf
 
@@ -118,6 +122,9 @@ rm -rf $RPM_BUILD_ROOT
 %{_infodir}/find-maint.info.gz
 
 %changelog
+* Tue Jun 01 2010 Kamil Dudka <kdudka at redhat.com> - 1:4.4.2-8
+- fix Savannah bug #29949
+
 * Mon May 10 2010 Kamil Dudka <kdudka at redhat.com> - 1:4.4.2-7
 - backport of patches for upstream bugs #19593 and #27563 (rhbz #493143)
 - mention -xautofs in the output of --help (#590166)



More information about the scm-commits mailing list