summaryrefslogtreecommitdiff
path: root/ext2fs/dir.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext2fs/dir.c')
-rw-r--r--ext2fs/dir.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/ext2fs/dir.c b/ext2fs/dir.c
index 4523071d..dc6cfc37 100644
--- a/ext2fs/dir.c
+++ b/ext2fs/dir.c
@@ -276,7 +276,11 @@ diskfs_lookup (struct node *dp, char *name, enum lookup_type type,
if ((err && err != ENOENT)
|| !ds
|| ds->type == LOOKUP)
- vm_deallocate (mach_task_self (), buf, buflen);
+ {
+ vm_deallocate (mach_task_self (), buf, buflen);
+ if (ds)
+ ds->type = LOOKUP; /* set to be ignored by drop_dirstat */
+ }
else
{
ds->mapbuf = buf;