diff options
author | Guy Benoish <guy.benoish@redislabs.com> | 2018-03-07 10:40:37 +0700 |
---|---|---|
committer | antirez <antirez@gmail.com> | 2019-03-14 11:45:28 +0100 |
commit | 643110525e1388dca36097d0be6d48a5021e59e1 (patch) | |
tree | 6350a39a9a533e9088fd50327f46f7ba97f15f81 | |
parent | b0e863195e4e1870eb4f3480fa8b15c6aff2a956 (diff) | |
download | redis-643110525e1388dca36097d0be6d48a5021e59e1.tar.gz |
Fix zlexrangespec mem-leak in genericZrangebylexCommand
-rw-r--r-- | src/t_zset.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/t_zset.c b/src/t_zset.c index 50652244b..df32e5d13 100644 --- a/src/t_zset.c +++ b/src/t_zset.c @@ -2854,7 +2854,10 @@ void genericZrangebylexCommand(client *c, int reverse) { while (remaining) { if (remaining >= 3 && !strcasecmp(c->argv[pos]->ptr,"limit")) { if ((getLongFromObjectOrReply(c, c->argv[pos+1], &offset, NULL) != C_OK) || - (getLongFromObjectOrReply(c, c->argv[pos+2], &limit, NULL) != C_OK)) return; + (getLongFromObjectOrReply(c, c->argv[pos+2], &limit, NULL) != C_OK)) { + zslFreeLexRange(&range); + return; + } pos += 3; remaining -= 3; } else { zslFreeLexRange(&range); |