Properly free encoded sorted set
This commit is contained in:
parent
4a14dbbac2
commit
0f23eb3b10
19
src/object.c
19
src/object.c
@ -138,11 +138,20 @@ void freeSetObject(robj *o) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void freeZsetObject(robj *o) {
|
void freeZsetObject(robj *o) {
|
||||||
zset *zs = o->ptr;
|
zset *zs;
|
||||||
|
switch (o->encoding) {
|
||||||
dictRelease(zs->dict);
|
case REDIS_ENCODING_RAW:
|
||||||
zslFree(zs->zsl);
|
zs = o->ptr;
|
||||||
zfree(zs);
|
dictRelease(zs->dict);
|
||||||
|
zslFree(zs->zsl);
|
||||||
|
zfree(zs);
|
||||||
|
break;
|
||||||
|
case REDIS_ENCODING_ZIPLIST:
|
||||||
|
zfree(o->ptr);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
redisPanic("Unknown sorted set encoding");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void freeHashObject(robj *o) {
|
void freeHashObject(robj *o) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user