On Thu, Jul 3, 2008 at 1:41 AM, Adam Borowski <[EMAIL PROTECTED]> wrote:
> Package: findutils
> Version: 4.4.0-2
> Severity: important
>
> The current version of "find" in unstable will invoke the command
> specified in "-execdir +" once for every file found -- as if it was
> -execdir \;.
>
> Should be:
> find -execdir echo '{}' +
> ./abc ./def ./ghi
>
> Is:
> find -execdir echo '{}' +
> ./abc
> ./def
> ./ghi
>
> The manpage documents the previous behaviour, and I found no mention
> of this change being intentional.See http://savannah.gnu.org/bugs/?19593 It's a consequence of the fact that -execdir needs to run any pending command before leaving a directory, but there's no way to tell when fts() is leaving a directory. > It does break quite a few > scripts, I'm very surprised by this. The + forms of -exec* do not guarantee to use any particular number of command-line arguments per exec, and AFAIK haven't ever guaranteed that. What scripts are broken by this restriction that didn't already have a bug? > and for those which work, they suddenly work insanely slow. That's a serious problem, and that's why (upstream) bug #19593 exists. If you would like to work on the problem, that would be great. Thanks, James.
