mirror of
https://github.com/fluencelabs/redis
synced 2025-03-30 22:31:03 +00:00
Fix comments for correctness in zunionInterGenericCommand().
Related to issue #1240.
This commit is contained in:
parent
cfb9d025c6
commit
3039e806d8
@ -1640,7 +1640,7 @@ void zunionInterGenericCommand(redisClient *c, robj *dstkey, int op) {
|
|||||||
while (zuiNext(&src[i],&zval)) {
|
while (zuiNext(&src[i],&zval)) {
|
||||||
double score, value;
|
double score, value;
|
||||||
|
|
||||||
/* Skip key when already processed */
|
/* Skip an element that when already processed */
|
||||||
if (dictFind(dstzset->dict,zuiObjectFromValue(&zval)) != NULL)
|
if (dictFind(dstzset->dict,zuiObjectFromValue(&zval)) != NULL)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
@ -1648,8 +1648,10 @@ void zunionInterGenericCommand(redisClient *c, robj *dstkey, int op) {
|
|||||||
score = src[i].weight * zval.score;
|
score = src[i].weight * zval.score;
|
||||||
if (isnan(score)) score = 0;
|
if (isnan(score)) score = 0;
|
||||||
|
|
||||||
/* Because the inputs are sorted by size, it's only possible
|
/* We need to check only next sets to see if this element
|
||||||
* for sets at larger indices to hold this element. */
|
* exists, since we process every element just one time so
|
||||||
|
* it can't exist in a previous set (otherwise it would be
|
||||||
|
* already processed). */
|
||||||
for (j = (i+1); j < setnum; j++) {
|
for (j = (i+1); j < setnum; j++) {
|
||||||
/* It is not safe to access the zset we are
|
/* It is not safe to access the zset we are
|
||||||
* iterating, so explicitly check for equal object. */
|
* iterating, so explicitly check for equal object. */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user