aboutsummaryrefslogtreecommitdiff
path: root/sbin/dump/traverse.c
diff options
context:
space:
mode:
Diffstat (limited to 'sbin/dump/traverse.c')
-rw-r--r--sbin/dump/traverse.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sbin/dump/traverse.c b/sbin/dump/traverse.c
index 6ed98adc629b..f948dd220737 100644
--- a/sbin/dump/traverse.c
+++ b/sbin/dump/traverse.c
@@ -340,12 +340,15 @@ searchdir(ino, blkno, size, filesize, tapesize, nodump)
ip = getino(dp->d_ino);
if (TSTINO(dp->d_ino, dumpinomap)) {
CLRINO(dp->d_ino, dumpinomap);
- CLRINO(dp->d_ino, usedinomap);
*tapesize -= blockest(ip);
}
- /* Add back to dumpdirmap to propagate nodump. */
+ /*
+ * Add back to dumpdirmap and remove from usedinomap
+ * to propagate nodump.
+ */
if ((ip->di_mode & IFMT) == IFDIR) {
SETINO(dp->d_ino, dumpdirmap);
+ CLRINO(dp->d_ino, usedinomap);
ret |= HASSUBDIRS;
}
} else {