Skip to content

Commit ad807e6

Browse files
committed
another leak fixed. Can't find more for now, but still a bug in ZSETs to fix
1 parent 599379d commit ad807e6

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

redis.c

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3731,17 +3731,21 @@ static zskiplist *zslCreate(void) {
37313731

37323732
static void zslFreeNode(zskiplistNode *node) {
37333733
decrRefCount(node->obj);
3734+
zfree(node->forward);
37343735
zfree(node);
37353736
}
37363737

37373738
static void zslFree(zskiplist *zsl) {
3738-
zskiplistNode *node = zsl->header->forward[1], *next;
3739+
zskiplistNode *node = zsl->header->forward[0], *next;
37393740

3741+
zfree(zsl->header->forward);
3742+
zfree(zsl->header);
37403743
while(node) {
37413744
next = node->forward[0];
37423745
zslFreeNode(node);
37433746
node = next;
37443747
}
3748+
zfree(zsl);
37453749
}
37463750

37473751
static int zslRandomLevel(void) {

0 commit comments

Comments
 (0)