From d6864d299904fe0e53797e4c8bd3b29a32869fd0 Mon Sep 17 00:00:00 2001 From: Oran Agra Date: Mon, 25 Apr 2016 14:18:40 +0300 Subject: [PATCH] additional fix to issue #2948 --- src/networking.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/networking.c b/src/networking.c index 6d9cb936..11ed9390 100644 --- a/src/networking.c +++ b/src/networking.c @@ -1147,6 +1147,9 @@ void processInputBuffer(redisClient *c) { /* Only reset the client when the command was executed. */ if (processCommand(c) == REDIS_OK) resetClient(c); + /* freeMemoryIfNeeded may flush slave output buffers. This may result + * into a slave, that may be the active client, to be freed. */ + if (server.current_client == NULL) break; } } }