Properly free encoded sorted set

This commit is contained in:
Pieter Noordhuis 2011-03-08 23:56:59 +01:00
parent 4a14dbbac2
commit 0f23eb3b10

View File

@ -138,11 +138,20 @@ void freeSetObject(robj *o) {
}
void freeZsetObject(robj *o) {
zset *zs = o->ptr;
dictRelease(zs->dict);
zslFree(zs->zsl);
zfree(zs);
zset *zs;
switch (o->encoding) {
case REDIS_ENCODING_RAW:
zs = o->ptr;
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) {