Streams: reset approx_maxlen in every maxlen loop

This commit is contained in:
zhaozhao.zz 2018-07-18 00:24:50 +08:00
parent da6b7516f1
commit 14d6318b32

View File

@ -1135,6 +1135,7 @@ void xaddCommand(client *c) {
* creation. */ * creation. */
break; break;
} else if (!strcasecmp(opt,"maxlen") && moreargs) { } else if (!strcasecmp(opt,"maxlen") && moreargs) {
approx_maxlen = 0;
char *next = c->argv[i+1]->ptr; char *next = c->argv[i+1]->ptr;
/* Check for the form MAXLEN ~ <count>. */ /* Check for the form MAXLEN ~ <count>. */
if (moreargs >= 2 && next[0] == '~' && next[1] == '\0') { if (moreargs >= 2 && next[0] == '~' && next[1] == '\0') {
@ -2202,6 +2203,7 @@ void xtrimCommand(client *c) {
int moreargs = (c->argc-1) - i; /* Number of additional arguments. */ int moreargs = (c->argc-1) - i; /* Number of additional arguments. */
char *opt = c->argv[i]->ptr; char *opt = c->argv[i]->ptr;
if (!strcasecmp(opt,"maxlen") && moreargs) { if (!strcasecmp(opt,"maxlen") && moreargs) {
approx_maxlen = 0;
trim_strategy = TRIM_STRATEGY_MAXLEN; trim_strategy = TRIM_STRATEGY_MAXLEN;
char *next = c->argv[i+1]->ptr; char *next = c->argv[i+1]->ptr;
/* Check for the form MAXLEN ~ <count>. */ /* Check for the form MAXLEN ~ <count>. */