protocol/client: Use loc->pargfid if loc->parent(->gfid) is not filled

Change-Id: Id73bf635ca94dcf7518b33e529ffca07daeeb1f4
BUG: 1269461
Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
Reviewed-on: http://review.gluster.org/14078
Reviewed-by: Pranith Kumar Karampuri <pkarampu@redhat.com>
NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
Smoke: Gluster Build System <jenkins@build.gluster.com>
CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
This commit is contained in:
Krutika Dhananjay 2016-04-26 16:05:04 +05:30 committed by Jeff Darcy
parent 04d5723709
commit 40e96c1764

View File

@ -3326,17 +3326,15 @@ client3_3_lookup (call_frame_t *frame, xlator_t *this,
loc_copy (&local->loc, args->loc);
loc_path (&local->loc, NULL);
if (args->loc->parent) {
if (!gf_uuid_is_null (args->loc->parent->gfid))
if ((args->loc->parent) && (!gf_uuid_is_null (args->loc->parent->gfid)))
memcpy (req.pargfid, args->loc->parent->gfid, 16);
else
memcpy (req.pargfid, args->loc->pargfid, 16);
} else {
if (!gf_uuid_is_null (args->loc->inode->gfid))
memcpy (req.gfid, args->loc->inode->gfid, 16);
else
memcpy (req.gfid, args->loc->gfid, 16);
}
if ((args->loc->inode) && (!gf_uuid_is_null (args->loc->inode->gfid)))
memcpy (req.gfid, args->loc->inode->gfid, 16);
else
memcpy (req.gfid, args->loc->gfid, 16);
if (args->xdata) {
content = dict_get (args->xdata, GF_CONTENT_KEY);