From 6168d5a1a64631182a7698f2f97f827d6a8aa7f3 Mon Sep 17 00:00:00 2001 From: charsyam Date: Tue, 27 Feb 2018 21:46:19 +0900 Subject: [PATCH] fix-out-of-index-range-for-redis-cli-findbigkey --- src/redis-cli.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/redis-cli.c b/src/redis-cli.c index 372d02d9..e9f1e360 100644 --- a/src/redis-cli.c +++ b/src/redis-cli.c @@ -2077,6 +2077,7 @@ static void pipeMode(void) { #define TYPE_ZSET 4 #define TYPE_STREAM 5 #define TYPE_NONE 6 +#define TYPE_MAX_KEYS TYPE_NONE static redisReply *sendScan(unsigned long long *it) { redisReply *reply = redisCommand(context, "SCAN %llu", *it); @@ -2222,9 +2223,9 @@ static void getKeySizes(redisReply *keys, int *types, } static void findBigKeys(void) { - unsigned long long biggest[5] = {0}, counts[5] = {0}, totalsize[5] = {0}; + unsigned long long biggest[TYPE_MAX_KEYS] = {0}, counts[TYPE_MAX_KEYS] = {0}, totalsize[TYPE_MAX_KEYS] = {0}; unsigned long long sampled = 0, total_keys, totlen=0, *sizes=NULL, it=0; - sds maxkeys[5] = {0}; + sds maxkeys[TYPE_MAX_KEYS] = {0}; char *typename[] = {"string","list","set","hash","zset","stream"}; char *typeunit[] = {"bytes","items","members","fields","members"}; redisReply *reply, *keys;