summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--xlators/cluster/afr/src/afr-common.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/xlators/cluster/afr/src/afr-common.c b/xlators/cluster/afr/src/afr-common.c
index 30986b589..0b0d1c220 100644
--- a/xlators/cluster/afr/src/afr-common.c
+++ b/xlators/cluster/afr/src/afr-common.c
@@ -938,6 +938,7 @@ afr_fresh_lookup_cbk (call_frame_t *frame, void *cookie,
} else {
afr_lookup_self_heal_check (this, local, buf, lookup_buf);
+ local->cont.lookup.xattrs[child_index] = dict_ref (xattr);
if (child_index == local->read_child_index) {
/*
lookup has succeeded on the read child.
@@ -947,7 +948,6 @@ afr_fresh_lookup_cbk (call_frame_t *frame, void *cookie,
dict_unref (local->cont.lookup.xattr);
local->cont.lookup.xattr = dict_ref (xattr);
- local->cont.lookup.xattrs[child_index] = dict_ref (xattr);
local->cont.lookup.postparent = *postparent;
*lookup_buf = *buf;
@@ -1057,6 +1057,7 @@ afr_revalidate_lookup_cbk (call_frame_t *frame, void *cookie,
} else {
afr_lookup_self_heal_check (this, local, buf, lookup_buf);
+ local->cont.lookup.xattrs[child_index] = dict_ref (xattr);
if (child_index == local->read_child_index) {
/*
@@ -1068,7 +1069,6 @@ afr_revalidate_lookup_cbk (call_frame_t *frame, void *cookie,
dict_unref (local->cont.lookup.xattr);
local->cont.lookup.xattr = dict_ref (xattr);
- local->cont.lookup.xattrs[child_index] = dict_ref (xattr);
local->cont.lookup.postparent = *postparent;
*lookup_buf = *buf;