fix clusterManagerGetAntiAffinityScore double free otypes

This commit is contained in:
Zhicheng Wei 2019-01-19 11:38:36 +08:00
parent c8391388c2
commit c90cf3d82f

View File

@ -2471,9 +2471,10 @@ static int clusterManagerGetAntiAffinityScore(clusterManagerNodeArray *ipnodes,
} }
// Master type 'm' is always set as the first character of the // Master type 'm' is always set as the first character of the
// types string. // types string.
otypes = sdsdup(otypes);
if (!node->replicate) types = sdscatprintf(otypes, "m%s", otypes); if (!node->replicate) types = sdscatprintf(otypes, "m%s", otypes);
else types = sdscat(otypes, "s"); else types = sdscat(otypes, "s");
if (types != otypes) dictReplace(related, key, types); dictReplace(related, key, types);
} }
/* Now it's trivial to check, for each related group having the /* Now it's trivial to check, for each related group having the
* same host, what is their local score. */ * same host, what is their local score. */