From 3fbf9001ce88f2b3d154b099bcf2fd3783f24940 Mon Sep 17 00:00:00 2001 From: Pieter Noordhuis Date: Sun, 30 May 2010 03:14:38 +0200 Subject: [PATCH] fix LREM to remove *all* occurances when a zero argument is given --- redis.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/redis.c b/redis.c index 1ae32797..2a488283 100644 --- a/redis.c +++ b/redis.c @@ -5196,12 +5196,12 @@ static void lremCommand(redisClient *c) { li = lInitIterator(subject,0); } - while (toremove && lIsEntry(li)) { + while (lIsEntry(li)) { if (lEqualTo(li,obj)) { lDelete(li,direction); server.dirty++; - toremove--; removed++; + if (toremove && removed == toremove) break; } else { lMove(li,direction); } -- 2.47.2