busybox: fix regression in handling non-existant find path arguments (#19439)
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 45321
This commit is contained in:
parent
2198db252c
commit
c99d9afff3
1 changed files with 31 additions and 0 deletions
31
package/utils/busybox/patches/280-fix_find_regression.patch
Normal file
31
package/utils/busybox/patches/280-fix_find_regression.patch
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
find: fix regression in status processing for path arguments
|
||||||
|
|
||||||
|
Regression added in commit 14158b4127dba30466c50147b868a6a89702960b
|
||||||
|
"find: add optional support for '-exec ... {} +'"
|
||||||
|
|
||||||
|
This commit causes find to exit on the first path argument that was not
|
||||||
|
found, which breaks existing scripts and is incompatible to other
|
||||||
|
implementations.
|
||||||
|
|
||||||
|
Instead of exiting on the first failure, return EXIT_FAILURE at the end
|
||||||
|
if any error occurred.
|
||||||
|
|
||||||
|
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
|
||||||
|
|
||||||
|
--- a/findutils/find.c
|
||||||
|
+++ b/findutils/find.c
|
||||||
|
@@ -1460,12 +1460,10 @@ int find_main(int argc UNUSED_PARAM, cha
|
||||||
|
NULL, /* user data */
|
||||||
|
0) /* depth */
|
||||||
|
) {
|
||||||
|
- status = EXIT_FAILURE;
|
||||||
|
- goto out;
|
||||||
|
+ status |= EXIT_FAILURE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
- IF_FEATURE_FIND_EXEC_PLUS(status = flush_exec_plus();)
|
||||||
|
-out:
|
||||||
|
+ IF_FEATURE_FIND_EXEC_PLUS(status |= flush_exec_plus();)
|
||||||
|
return status;
|
||||||
|
}
|
Loading…
Reference in a new issue