[git commit master] find: tweak error message

Bernhard Reutner-Fischer rep.dot.nop at gmail.com
Thu Feb 25 12:22:37 UTC 2010


commit: http://git.busybox.net/busybox/commit/?id=2e73d84c02c6dd4945838665ce0167bddbb7f1c8
branch: http://git.busybox.net/busybox/commit/?id=refs/heads/master

big find:
find: missing argument to `-exec'
we now say
find: -exec requires an argument
instead of the cryptic message we emitted previously.
Additional benefit is that it's now 23 bytes smaller.

Add TODO to add '-exec {} +' support

Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop at gmail.com>
---
 findutils/find.c |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/findutils/find.c b/findutils/find.c
index 4bc3b38..f45abbe 100644
--- a/findutils/find.c
+++ b/findutils/find.c
@@ -674,10 +674,14 @@ static action*** parse_params(char **argv)
 			ap->exec_argv = ++argv; /* first arg after -exec */
 			ap->exec_argc = 0;
 			while (1) {
-				if (!*argv) /* did not see ';' until end */
-					bb_error_msg_and_die("-exec CMD must end by ';'");
+				if (!*argv) /* did not see ';' or '+' until end */
+					bb_error_msg_and_die(bb_msg_requires_arg, "-exec");
 				if (LONE_CHAR(argv[0], ';'))
 					break;
+				//TODO: implement {} + (like xargs)
+				// See:
+				// find findutils/ -exec echo ">"{}"<" \;
+				// find findutils/ -exec echo ">"{}"<" +
 				argv++;
 				ap->exec_argc++;
 			}
-- 
1.6.3.3



More information about the busybox-cvs mailing list