* fts-cycle.c (leave_dir): When "leaving" a top level directory due
authorJim Meyering <jim@meyering.net>
Mon, 9 Oct 2006 12:15:39 +0000 (12:15 +0000)
committerJim Meyering <jim@meyering.net>
Mon, 9 Oct 2006 12:15:39 +0000 (12:15 +0000)
to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d

lib/ChangeLog
lib/fts-cycle.c

index cd9787b..2f680fc 100644 (file)
@@ -1,5 +1,11 @@
 2006-10-09  Jim Meyering  <jim@meyering.net>
 
+       * fts-cycle.c (leave_dir): When "leaving" a top level directory due
+       to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
+       Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
+
+2006-10-09  Jim Meyering  <jim@meyering.net>
+
        * lchown.c: Include <sys/stat.h> before "stat-macros.h".
        Patch from Bruno Haible.
 
index 8edf26e..669db58 100644 (file)
@@ -140,7 +140,7 @@ leave_dir (FTS *fts, FTSENT *ent)
   else
     {
       FTSENT *parent = ent->fts_parent;
-      if (parent != NULL)
+      if (parent != NULL && 0 <= parent->fts_level)
        CYCLE_CHECK_REFLECT_CHDIR_UP (fts->fts_cycle.state,
                                      *(parent->fts_statp), *st);
     }