summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--xlators/storage/posix/src/posix-inode-fd-ops.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/xlators/storage/posix/src/posix-inode-fd-ops.c b/xlators/storage/posix/src/posix-inode-fd-ops.c
index bf7e87dc91b..8727b9045b4 100644
--- a/xlators/storage/posix/src/posix-inode-fd-ops.c
+++ b/xlators/storage/posix/src/posix-inode-fd-ops.c
@@ -5148,7 +5148,12 @@ posix_do_readdir (call_frame_t *frame, xlator_t *this,
posix_readdirp_fill (this, fd, &entries, dict);
out:
- STACK_UNWIND_STRICT (readdir, frame, op_ret, op_errno, &entries, NULL);
+ if (whichop == GF_FOP_READDIR)
+ STACK_UNWIND_STRICT (readdir, frame, op_ret, op_errno, &entries,
+ NULL);
+ else
+ STACK_UNWIND_STRICT (readdirp, frame, op_ret, op_errno,
+ &entries, NULL);
gf_dirent_free (&entries);
@@ -5188,8 +5193,8 @@ posix_readdirp (call_frame_t *frame, xlator_t *this,
}
}
- STACK_UNWIND_STRICT (readdir, frame, op_ret, op_errno, &entries,
- NULL);
+ STACK_UNWIND_STRICT (readdirp, frame, op_ret, op_errno,
+ &entries, NULL);
gf_dirent_free (&entries);
return 0;