diff options
author | antirez <antirez@gmail.com> | 2020-02-27 17:47:50 +0100 |
---|---|---|
committer | antirez <antirez@gmail.com> | 2020-02-27 17:51:30 +0100 |
commit | 9abdc089f84c7b7e16b62b41a7a30eb9814d5b83 (patch) | |
tree | 826c9e3907c742027915db37296d89f2315712e9 /src/config.c | |
parent | 43f39f2e37b3b46683747a8207637f04747c9e94 (diff) | |
download | redis-9abdc089f84c7b7e16b62b41a7a30eb9814d5b83.tar.gz |
Fix SDS misuse in enumConfigSet(). Related to #6778.
Diffstat (limited to 'src/config.c')
-rw-r--r-- | src/config.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/config.c b/src/config.c index 8d069f8db..aeb2fea7e 100644 --- a/src/config.c +++ b/src/config.c @@ -1666,12 +1666,12 @@ static int enumConfigSet(typeData data, sds value, int update, char **err) { sds enumerr = sdsnew("argument must be one of the following: "); configEnum *enumNode = data.enumd.enum_value; while(enumNode->name != NULL) { - enumerr = sdscatlen(enumerr, enumNode->name, strlen(enumNode->name)); + enumerr = sdscatlen(enumerr, enumNode->name, + strlen(enumNode->name)); enumerr = sdscatlen(enumerr, ", ", 2); enumNode++; } - - enumerr[sdslen(enumerr) - 2] = '\0'; + sdsrange(enumerr,0,-3); /* Remove final ", ". */ strncpy(loadbuf, enumerr, LOADBUF_SIZE); loadbuf[LOADBUF_SIZE - 1] = '\0'; |