]> git.saurik.com Git - redis.git/blobdiff - src/pubsub.c
dict.c: added two lower level methods for directly manipulating hash entries. This...
[redis.git] / src / pubsub.c
index 728e559c9e4c563067c5fd2ce8417fc9ec0b5061..af37df5c431f17ad5dcd79daec76f415cd72378d 100644 (file)
@@ -63,10 +63,10 @@ int pubsubUnsubscribeChannel(redisClient *c, robj *channel, int notify) {
         retval = 1;
         /* Remove the client from the channel -> clients list hash table */
         de = dictFind(server.pubsub_channels,channel);
-        redisAssert(de != NULL);
+        redisAssertWithInfo(c,NULL,de != NULL);
         clients = dictGetEntryVal(de);
         ln = listSearchKey(clients,c);
-        redisAssert(ln != NULL);
+        redisAssertWithInfo(c,NULL,ln != NULL);
         listDelNode(clients,ln);
         if (listLength(clients) == 0) {
             /* Free the list and associated hash entry at all if this was
@@ -263,5 +263,6 @@ void punsubscribeCommand(redisClient *c) {
 
 void publishCommand(redisClient *c) {
     int receivers = pubsubPublishMessage(c->argv[1],c->argv[2]);
+    if (server.cluster_enabled) clusterPropagatePublish(c->argv[1],c->argv[2]);
     addReplyLongLong(c,receivers);
 }