diff options
| -rw-r--r-- | xlators/mount/fuse/src/fuse-resolve.c | 5 | 
1 files changed, 4 insertions, 1 deletions
| diff --git a/xlators/mount/fuse/src/fuse-resolve.c b/xlators/mount/fuse/src/fuse-resolve.c index 8ee64460401..6bde0b3c795 100644 --- a/xlators/mount/fuse/src/fuse-resolve.c +++ b/xlators/mount/fuse/src/fuse-resolve.c @@ -261,8 +261,11 @@ fuse_resolve_parent_simple (fuse_state_t *state)                   * have been there even though it need not have (bug #804592).                   */ -                if (loc->inode && inode_needs_lookup (loc->inode, THIS)) +                if (loc->inode && inode_needs_lookup (loc->inode, THIS)) { +                        inode_unref (loc->inode); +                        loc->inode = NULL;                          return -1; +                }                  if ((loc->inode == NULL)                      && __is_root_gfid (parent->gfid)) { | 
