svn commit: trunk/busybox/findutils

vda at busybox.net vda at busybox.net
Tue Oct 31 03:20:13 UTC 2006


Author: vda
Date: 2006-10-30 19:20:13 -0800 (Mon, 30 Oct 2006)
New Revision: 16474

Log:
find: fix implicit -print (sometime differed from standard)


Modified:
   trunk/busybox/findutils/find.c


Changeset:
Modified: trunk/busybox/findutils/find.c
===================================================================
--- trunk/busybox/findutils/find.c	2006-10-30 02:10:47 UTC (rev 16473)
+++ trunk/busybox/findutils/find.c	2006-10-31 03:20:13 UTC (rev 16474)
@@ -35,6 +35,14 @@
  * file.txt
  * # find file.txt -name '*f*' -o -name '*z*'
  * file.txt
+ *
+ * # find t z -name '*t*' -print -o -name '*z*'
+ * t
+ * # find t z t z -name '*t*' -o -name '*z*' -print
+ * z
+ * z
+ * # find t z t z '(' -name '*t*' -o -name '*z*' ')' -o -print
+ * (no output)
  */
 
 #include "busybox.h"
@@ -193,7 +201,6 @@
 		bb_perror_msg("%s", argv[0]);
 	for (i = 0; i < ap->exec_argc; i++)
 		free(argv[i]);
-	need_print = 0;
 	return rc == 0; /* return 1 if success */
 }
 #endif
@@ -202,7 +209,6 @@
 SFUNC(print0)
 {
 	printf("%s%c", fileName, '\0');
-	need_print = 0;
 	return TRUE;
 }
 #endif
@@ -210,7 +216,6 @@
 SFUNC(print)
 {
 	puts(fileName);
-	need_print = 0;
 	return TRUE;
 }
 
@@ -331,10 +336,12 @@
 
 	/* --- Tests and actions --- */
 		else if (strcmp(arg, "-print") == 0) {
+			need_print = 0;
 			(void) ALLOC_ACTION(print);
 		}
 #if ENABLE_FEATURE_FIND_PRINT0
 		else if (strcmp(arg, "-print0") == 0) {
+			need_print = 0;
 			(void) ALLOC_ACTION(print0);
 		}
 #endif
@@ -420,6 +427,7 @@
 		else if (strcmp(arg, "-exec") == 0) {
 			int i;
 			action_exec *ap;
+			need_print = 0;
 			ap = ALLOC_ACTION(exec);
 			ap->exec_argv = ++argv; /* first arg after -exec */
 			ap->exec_argc = 0;




More information about the busybox-cvs mailing list