From: Paul Fox Date: Thu, 6 Sep 2007 17:45:16 +0000 (-0000) Subject: fix -xdev behavior in the presence of two or more nested mount points X-Git-Tag: 1_8_0~203 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=dcf9bba3b76cc1b79d9f1c1a3cd6428a36699c9d;p=oweals%2Fbusybox.git fix -xdev behavior in the presence of two or more nested mount points on the command line, e.g. "find / /boot -xdev". --- 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);