From dcf9bba3b76cc1b79d9f1c1a3cd6428a36699c9d Mon Sep 17 00:00:00 2001 From: Paul Fox Date: Thu, 6 Sep 2007 17:45:16 +0000 Subject: fix -xdev behavior in the presence of two or more nested mount points on the command line, e.g. "find / /boot -xdev". --- findutils/find.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'findutils') diff --git a/findutils/find.c b/findutils/find.c index 21584681b..f3167a083 100644 --- a/findutils/find.c +++ b/findutils/find.c @@ -383,9 +383,11 @@ static int fileAction(const char *fileName, struct stat *statbuf, void *userData #if ENABLE_FEATURE_FIND_XDEV if (S_ISDIR(statbuf->st_mode) && xdev_count) { for (i = 0; i < xdev_count; i++) { - if (xdev_dev[i] != statbuf->st_dev) - return SKIP; + if (xdev_dev[i] == statbuf->st_dev) + break; } + if (i == xdev_count) + return SKIP; } #endif i = exec_actions(actions, fileName, statbuf); -- cgit v1.2.3