summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYossi Gottlieb <yossigo@gmail.com>2015-04-26 12:04:16 +0300
committerantirez <antirez@gmail.com>2015-05-04 12:20:28 +0200
commit81a8ebd7f08bc08029929b2eccf01156d777c286 (patch)
treedd26a5d9185c4100a5ba6cda7c5aaf596db8b0e6
parentc4d4c1ed1247a38df86cd5ae46643b6e255c2867 (diff)
downloadredis-81a8ebd7f08bc08029929b2eccf01156d777c286.tar.gz
Fix Redis server crash when Lua command exceeds client output buffer
limit.
-rw-r--r--src/networking.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/networking.c b/src/networking.c
index fbee72121..7ab763b3d 100644
--- a/src/networking.c
+++ b/src/networking.c
@@ -755,7 +755,7 @@ void freeClient(redisClient *c) {
* a context where calling freeClient() is not possible, because the client
* should be valid for the continuation of the flow of the program. */
void freeClientAsync(redisClient *c) {
- if (c->flags & REDIS_CLOSE_ASAP) return;
+ if (c->flags & REDIS_CLOSE_ASAP || c->flags & REDIS_LUA_CLIENT) return;
c->flags |= REDIS_CLOSE_ASAP;
listAddNodeTail(server.clients_to_close,c);
}