diff options
author | antirez <antirez@gmail.com> | 2014-01-08 17:18:00 +0100 |
---|---|---|
committer | antirez <antirez@gmail.com> | 2014-01-08 17:18:34 +0100 |
commit | e1ab2991c3daefd9482ab589539f184141166648 (patch) | |
tree | 0ca8997b5b3a7cd6fab082e54d80e73a3b9a17b8 /src/notify.c | |
parent | a2f99478271e0ec9b224ee3aec23b3328ff87713 (diff) | |
download | redis-e1ab2991c3daefd9482ab589539f184141166648.tar.gz |
Fix keyspace events flags-to-string conversion.
Fixes issue #1491 on Github.
Diffstat (limited to 'src/notify.c')
-rw-r--r-- | src/notify.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/src/notify.c b/src/notify.c index bb598c4f2..f77239ecf 100644 --- a/src/notify.c +++ b/src/notify.c @@ -67,17 +67,19 @@ int keyspaceEventsStringToFlags(char *classes) { sds keyspaceEventsFlagsToString(int flags) { sds res; - if ((flags & REDIS_NOTIFY_ALL) == REDIS_NOTIFY_ALL) - return sdsnew("A"); res = sdsempty(); - if (flags & REDIS_NOTIFY_GENERIC) res = sdscatlen(res,"g",1); - if (flags & REDIS_NOTIFY_STRING) res = sdscatlen(res,"$",1); - if (flags & REDIS_NOTIFY_LIST) res = sdscatlen(res,"l",1); - if (flags & REDIS_NOTIFY_SET) res = sdscatlen(res,"s",1); - if (flags & REDIS_NOTIFY_HASH) res = sdscatlen(res,"h",1); - if (flags & REDIS_NOTIFY_ZSET) res = sdscatlen(res,"z",1); - if (flags & REDIS_NOTIFY_EXPIRED) res = sdscatlen(res,"x",1); - if (flags & REDIS_NOTIFY_EVICTED) res = sdscatlen(res,"e",1); + if ((flags & REDIS_NOTIFY_ALL) == REDIS_NOTIFY_ALL) { + res = sdscatlen(res,"A",1); + } else { + if (flags & REDIS_NOTIFY_GENERIC) res = sdscatlen(res,"g",1); + if (flags & REDIS_NOTIFY_STRING) res = sdscatlen(res,"$",1); + if (flags & REDIS_NOTIFY_LIST) res = sdscatlen(res,"l",1); + if (flags & REDIS_NOTIFY_SET) res = sdscatlen(res,"s",1); + if (flags & REDIS_NOTIFY_HASH) res = sdscatlen(res,"h",1); + if (flags & REDIS_NOTIFY_ZSET) res = sdscatlen(res,"z",1); + if (flags & REDIS_NOTIFY_EXPIRED) res = sdscatlen(res,"x",1); + if (flags & REDIS_NOTIFY_EVICTED) res = sdscatlen(res,"e",1); + } if (flags & REDIS_NOTIFY_KEYSPACE) res = sdscatlen(res,"K",1); if (flags & REDIS_NOTIFY_KEYEVENT) res = sdscatlen(res,"E",1); return res; |