Merge pull request #7160 from oranagra/refix-get_decoded_object
hickup, re-fix dictEncObjKeyCompare
This commit is contained in:
commit
4d4c8c8a40
@ -1223,11 +1223,11 @@ int dictEncObjKeyCompare(void *privdata, const void *key1,
|
|||||||
* good reasons, because it would incrRefCount() the object, which
|
* good reasons, because it would incrRefCount() the object, which
|
||||||
* is invalid. So we check to make sure dictFind() works with static
|
* is invalid. So we check to make sure dictFind() works with static
|
||||||
* objects as well. */
|
* objects as well. */
|
||||||
if (!sdsEncodedObject(o1)) o1 = getDecodedObject(o1);
|
if (o1->refcount != OBJ_STATIC_REFCOUNT) o1 = getDecodedObject(o1);
|
||||||
if (!sdsEncodedObject(o2)) o2 = getDecodedObject(o2);
|
if (o2->refcount != OBJ_STATIC_REFCOUNT) o2 = getDecodedObject(o2);
|
||||||
cmp = dictSdsKeyCompare(privdata,o1->ptr,o2->ptr);
|
cmp = dictSdsKeyCompare(privdata,o1->ptr,o2->ptr);
|
||||||
if (o1!=key1) decrRefCount(o1);
|
if (o1->refcount != OBJ_STATIC_REFCOUNT) decrRefCount(o1);
|
||||||
if (o2!=key2) decrRefCount(o2);
|
if (o2->refcount != OBJ_STATIC_REFCOUNT) decrRefCount(o2);
|
||||||
return cmp;
|
return cmp;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user