fix nftw FTW_MOUNT flag
authorRich Felker <dalias@aerifal.cx>
Sat, 1 Feb 2014 19:33:33 +0000 (14:33 -0500)
committerRich Felker <dalias@aerifal.cx>
Sat, 1 Feb 2014 19:33:33 +0000 (14:33 -0500)
the incorrect check for crossing device boundaries was preventing nftw
from traversing anything except the initially provided pathname.

src/misc/nftw.c

index b2e84bca5ea3a4ef1636240e82a0dff269f19b90..efb2b89524747397b0ccf3e5bbfb5438fd9ecd87 100644 (file)
@@ -46,8 +46,7 @@ static int do_nftw(char *path, int (*fn)(const char *, const struct stat *, int,
                type = FTW_F;
        }
 
-       if ((flags & FTW_MOUNT) && h
-        && (st.st_dev != h->dev || st.st_ino != h->ino))
+       if ((flags & FTW_MOUNT) && h && st.st_dev != h->dev)
                return 0;
        
        new.chain = h;