diff --git a/src/pubsub.c b/src/pubsub.c index 2bd3d0580..728e559c9 100644 --- a/src/pubsub.c +++ b/src/pubsub.c @@ -141,7 +141,7 @@ int pubsubUnsubscribePattern(redisClient *c, robj *pattern, int notify) { /* Unsubscribe from all the channels. Return the number of channels the * client was subscribed from. */ int pubsubUnsubscribeAllChannels(redisClient *c, int notify) { - dictIterator *di = dictGetIterator(c->pubsub_channels); + dictIterator *di = dictGetSafeIterator(c->pubsub_channels); dictEntry *de; int count = 0; diff --git a/src/t_zset.c b/src/t_zset.c index 19aac3d50..a5dc27c76 100644 --- a/src/t_zset.c +++ b/src/t_zset.c @@ -1521,7 +1521,7 @@ void zunionInterGenericCommand(redisClient *c, robj *dstkey, int op) { score = src[0].weight * zval.score; for (j = 1; j < setnum; j++) { - /* It is not safe to access the hash we zset we are + /* It is not safe to access the zset we are * iterating, so explicitly check for equal object. */ if (src[j].subject == src[0].subject) { value = zval.score*src[j].weight; @@ -1566,7 +1566,7 @@ void zunionInterGenericCommand(redisClient *c, robj *dstkey, int op) { /* Because the inputs are sorted by size, it's only possible * for sets at larger indices to hold this element. */ for (j = (i+1); j < setnum; j++) { - /* It is not safe to access the hash we zset we are + /* It is not safe to access the zset we are * iterating, so explicitly check for equal object. */ if(src[j].subject == src[i].subject) { value = zval.score*src[j].weight; diff --git a/src/util.c b/src/util.c index e83dbeddc..f5a23af2a 100644 --- a/src/util.c +++ b/src/util.c @@ -1,9 +1,11 @@ +#include "fmacros.h" #include #include #include #include #include #include + #include "util.h" /* Glob-style pattern matching. */ diff --git a/tests/integration/replication.tcl b/tests/integration/replication.tcl index 7be4df4b7..892fae03b 100644 --- a/tests/integration/replication.tcl +++ b/tests/integration/replication.tcl @@ -28,7 +28,7 @@ start_server {tags {"repl"}} { createComplexDataset r 50000 useexpire after 4000 ;# Make sure everything expired before taking the digest r keys * ;# Force DEL syntesizing to slave - after 1000 ;# Wait another second. Now everything should be file. + after 1000 ;# Wait another second. Now everything should be fine. if {[r debug digest] ne [r -1 debug digest]} { set csv1 [csvdump r] set csv2 [csvdump {r -1}] diff --git a/tests/test_helper.tcl b/tests/test_helper.tcl index c594f6f6d..6dc85eff3 100644 --- a/tests/test_helper.tcl +++ b/tests/test_helper.tcl @@ -110,6 +110,7 @@ proc cleanup {} { } proc execute_everything {} { + execute_tests "unit/printver" execute_tests "unit/auth" execute_tests "unit/protocol" execute_tests "unit/basic" diff --git a/tests/unit/printver.tcl b/tests/unit/printver.tcl new file mode 100644 index 000000000..c80f45144 --- /dev/null +++ b/tests/unit/printver.tcl @@ -0,0 +1,6 @@ +start_server {} { + set i [r info] + regexp {redis_version:(.*?)\r\n} $i - version + regexp {redis_git_sha1:(.*?)\r\n} $i - sha1 + puts "Testing Redis version $version ($sha1)" +}