diff options
author | antirez <antirez@gmail.com> | 2018-01-19 11:11:52 +0100 |
---|---|---|
committer | antirez <antirez@gmail.com> | 2018-03-15 12:54:10 +0100 |
commit | b8e52321612f3fa7a3a78779700d74df99b154cf (patch) | |
tree | 65956170da0a3b97b005785f275afcb085560ab1 | |
parent | bd1c11dc35ce34d137232f9c04f76ddb4de40354 (diff) | |
download | redis-b8e52321612f3fa7a3a78779700d74df99b154cf.tar.gz |
CG: fix parsing in XREADGROUP and streamLookupCG() NULL check.
-rw-r--r-- | src/t_stream.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/t_stream.c b/src/t_stream.c index 38b59a067..82c926b39 100644 --- a/src/t_stream.c +++ b/src/t_stream.c @@ -976,8 +976,8 @@ void xreadCommand(client *c) { "XREADGROUP. You called XREAD instead."); return; } - groupname = c->argv[i]->ptr; - consumername = c->argv[i+1]->ptr; + groupname = c->argv[i+1]->ptr; + consumername = c->argv[i+2]->ptr; i += 2; } else { addReply(c,shared.syntaxerr); @@ -1147,6 +1147,7 @@ void streamFreeCG(streamCG *cg) { /* Lookup the consumer group in the specified stream and returns its * pointer, otherwise if there is no such group, NULL is returned. */ streamCG *streamLookupCG(stream *s, sds groupname) { + if (s->cgroups == NULL) return NULL; streamCG *cg = raxFind(s->cgroups,(unsigned char*)groupname, sdslen(groupname)); return (cg == raxNotFound) ? NULL : cg; |