summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorantirez <antirez@gmail.com>2018-12-05 11:59:55 +0100
committerantirez <antirez@gmail.com>2018-12-21 11:42:51 +0100
commit6cdc1bb9478bff926635f9f9fdc65159a7df9d34 (patch)
tree37edc5757814ba10a407fe7be98c863eee354d6e
parent038d2623e10bde8b8450095cc497997538445ae7 (diff)
downloadredis-6cdc1bb9478bff926635f9f9fdc65159a7df9d34.tar.gz
RESP3: hiredis: free map and set replies.
-rw-r--r--deps/hiredis/hiredis.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/deps/hiredis/hiredis.c b/deps/hiredis/hiredis.c
index 0de477c3e..34a987b31 100644
--- a/deps/hiredis/hiredis.c
+++ b/deps/hiredis/hiredis.c
@@ -82,6 +82,8 @@ void freeReplyObject(void *reply) {
case REDIS_REPLY_INTEGER:
break; /* Nothing to free */
case REDIS_REPLY_ARRAY:
+ case REDIS_REPLY_MAP:
+ case REDIS_REPLY_SET:
if (r->element != NULL) {
for (j = 0; j < r->elements; j++)
freeReplyObject(r->element[j]);
@@ -134,7 +136,7 @@ static void *createStringObject(const redisReadTask *task, char *str, size_t len
static void *createArrayObject(const redisReadTask *task, int elements) {
redisReply *r, *parent;
- r = createReplyObject(REDIS_REPLY_ARRAY);
+ r = createReplyObject(task->type);
if (r == NULL)
return NULL;