svn commit: trunk/busybox/findutils

pgf at busybox.net pgf at busybox.net
Mon Mar 27 16:42:34 UTC 2006


Author: pgf
Date: 2006-03-27 08:42:33 -0800 (Mon, 27 Mar 2006)
New Revision: 14665

Log:
prevent find from ever descending into an xdev'ed directory.


Modified:
   trunk/busybox/findutils/find.c


Changeset:
Modified: trunk/busybox/findutils/find.c
===================================================================
--- trunk/busybox/findutils/find.c	2006-03-27 12:50:39 UTC (rev 14664)
+++ trunk/busybox/findutils/find.c	2006-03-27 16:42:33 UTC (rev 14665)
@@ -79,6 +79,15 @@
 
 static int fileAction(const char *fileName, struct stat *statbuf, void* junk)
 {
+#ifdef CONFIG_FEATURE_FIND_XDEV
+	if (S_ISDIR(statbuf->st_mode) && xdev_count) {
+		int i;
+		for (i=0; i<xdev_count; i++) {
+			if (xdev_dev[i] != statbuf->st_dev)
+				return SKIP;
+		}
+	}
+#endif
 	if (pattern != NULL) {
 		const char *tmp = strrchr(fileName, '/');
 
@@ -125,21 +134,6 @@
 			goto no_match;
 	}
 #endif
-#ifdef CONFIG_FEATURE_FIND_XDEV
-	if (xdev_count) {
-		int i;
-		for (i=0; i<xdev_count; i++) {
-			if (xdev_dev[i] == statbuf-> st_dev)
-				break;
-		}
-		if (i == xdev_count) {
-			if(S_ISDIR(statbuf->st_mode))
-				return SKIP;
-			else
-				goto no_match;
-		}
-	}
-#endif
 #ifdef CONFIG_FEATURE_FIND_NEWER
 	if (newer_mtime != 0) {
 		time_t file_age = newer_mtime - statbuf->st_mtime;




More information about the busybox-cvs mailing list