Bernhard Voelker 8cdc9767e3 Fix bug #48030: find: -exec + does not pass all arguments in certain cases
When the -exec arguments buffer (usually 128k) is full and the given
command has been executed with all that arguments, find(1) missed to
execute the command yet another time if only 1 another file would have
to be processed.
Both find(1), i.e., nowadays FTS-version, and oldfind are affected.
This bug was present since the implementation of '-exec +' in 2005,
see commit FINDUTILS_4_2_11-1-25-gf0a6ac6.

* lib/buildcmd.c (bc_push_arg): Move the assignment to set 'state->todo'
to 1 down after the immediate execution which resets that flag.
* find/testsuite/sv-48030-exec-plus-bug.sh: Add a test.
* find/testsuite/Makefile.am (test_shell_progs): Reference the test.
* NEWS (Bug Fixes): Mention the fix.

Reported by Joe Philip Ninan <indiajoe@gmail.com> in
https://savannah.gnu.org/bugs/?48030
2016-05-31 10:39:10 +02:00
..
2016-02-16 23:27:44 +01:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00
2016-01-03 23:27:34 +00:00