summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorvmallika <vmallika@redhat.com>2015-03-19 07:02:24 +0530
committerPranith Kumar Karampuri <pkarampu@redhat.com>2015-03-25 09:11:34 -0700
commit18dd162e00c8655648cea702bdb7b8bf25f1da97 (patch)
tree10d4be44f6792a51186176670fa9ce507fbd18d5
parent00863dde3984030674d946de9fe94d5c07334c5e (diff)
posix: handle failure from posix_resolve
When building ancestory, posix_resolve gets the inode from the gfid. We need to handle the failure case from this function Change-Id: I19f0f0c739686b1b0ef96309212aa1c7911b3589 BUG: 1203629 Signed-off-by: vmallika <vmallika@redhat.com> Reviewed-on: http://review.gluster.org/9941 Reviewed-by: Raghavendra Bhat <raghavendra@redhat.com> Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Pranith Kumar Karampuri <pkarampu@redhat.com> Tested-by: Pranith Kumar Karampuri <pkarampu@redhat.com>
-rw-r--r--xlators/storage/posix/src/posix-handle.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/xlators/storage/posix/src/posix-handle.c b/xlators/storage/posix/src/posix-handle.c
index 5d184d930b0..2bf8813f44c 100644
--- a/xlators/storage/posix/src/posix-handle.c
+++ b/xlators/storage/posix/src/posix-handle.c
@@ -176,6 +176,10 @@ posix_make_ancestryfromgfid (xlator_t *this, char *path, int pathsize,
memset (&iabuf, 0, sizeof (iabuf));
inode = posix_resolve (this, itable, *parent, dir_name, &iabuf);
+ if (inode == NULL) {
+ ret = -1;
+ goto out;
+ }
strcat (dir_name, "/");
ret = posix_make_ancestral_node (priv_base_path, path, pathsize, head,