diff options
| author | Raghavendra G <raghavendra@gluster.com> | 2012-03-26 18:44:14 +0530 | 
|---|---|---|
| committer | Anand Avati <avati@redhat.com> | 2012-05-08 15:34:53 -0700 | 
| commit | 27fb213be6101bca859502ac87dddc4cd0a6f272 (patch) | |
| tree | a65ccf207e87747f0ea6b8414dd043622fce2c5d /xlators/mount/fuse/src/fuse-resolve.c | |
| parent | d6244e238976e45ccb8c64ab4a0fe443fe44c952 (diff) | |
fuse-resolve: consider cases where an entry should be resolved even
when parent belongs to active itable.
When parent is root, the parent inode returned will always be
active_subvol->itable->root and hence there can be cases where we
should explicitly resolve the entry in active graph.
Change-Id: I4e82df9a351ff6b5304891abc9932495bf7ea79d
BUG: 804592
Signed-off-by: Raghavendra G <raghavendra@gluster.com>
Reviewed-on: http://review.gluster.com/3007
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
Diffstat (limited to 'xlators/mount/fuse/src/fuse-resolve.c')
| -rw-r--r-- | xlators/mount/fuse/src/fuse-resolve.c | 6 | 
1 files changed, 6 insertions, 0 deletions
diff --git a/xlators/mount/fuse/src/fuse-resolve.c b/xlators/mount/fuse/src/fuse-resolve.c index b1eff83dc..5df0ac4b8 100644 --- a/xlators/mount/fuse/src/fuse-resolve.c +++ b/xlators/mount/fuse/src/fuse-resolve.c @@ -237,6 +237,12 @@ fuse_resolve_parent_simple (fuse_state_t *state)  		/* no graph switches since */  		loc->parent = inode_ref (parent);  		loc->inode = inode_grep (state->itable, parent, loc->name); + +                if (loc->inode == NULL) { +                        /* non decisive result - entry missing */ +                        return -1; +                } +  		/* decisive result - resolution success */  		return 0;  	}  | 
