diff options
Diffstat (limited to 'xlators/cluster/afr/src/afr-self-heal-common.c')
-rw-r--r-- | xlators/cluster/afr/src/afr-self-heal-common.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/xlators/cluster/afr/src/afr-self-heal-common.c b/xlators/cluster/afr/src/afr-self-heal-common.c index c9010dff308..63a52fcae84 100644 --- a/xlators/cluster/afr/src/afr-self-heal-common.c +++ b/xlators/cluster/afr/src/afr-self-heal-common.c @@ -658,6 +658,8 @@ afr_selfheal_discover_cbk (call_frame_t *frame, void *cookie, xlator_t *this, { afr_local_t *local = NULL; int i = -1; + GF_UNUSED int ret = -1; + int8_t need_heal = 1; local = frame->local; i = (long) cookie; @@ -669,8 +671,13 @@ afr_selfheal_discover_cbk (call_frame_t *frame, void *cookie, xlator_t *this, local->replies[i].poststat = *buf; if (parbuf) local->replies[i].postparent = *parbuf; - if (xdata) + if (xdata) { local->replies[i].xdata = dict_ref (xdata); + ret = dict_get_int8 (xdata, "link-count", &need_heal); + local->replies[i].need_heal = need_heal; + } else { + local->replies[i].need_heal = need_heal; + } syncbarrier_wake (&local->barrier); |