]> git.saurik.com Git - redis.git/commitdiff
Merge branch 'lists' of git://github.com/pietern/redis
authorantirez <antirez@gmail.com>
Sat, 5 Jun 2010 09:18:58 +0000 (11:18 +0200)
committerantirez <antirez@gmail.com>
Sat, 5 Jun 2010 09:18:58 +0000 (11:18 +0200)
1  2 
redis.c

diff --combined redis.c
index 00a5a80ce2f6de8b763e1dd058eece83f9a7bebb,d358ba3a148d62825f008592e9cc94a34402533c..44b115ea2f9b8eaf5c648866ef8d70c9916c6969
+++ b/redis.c
@@@ -4191,7 -4191,6 +4191,6 @@@ static robj *rdbLoadObject(int type, FI
              } else {
                  ele = tryObjectEncoding(ele);
                  listAddNodeTail(o->ptr,ele);
-                 incrRefCount(ele);
              }
          }
      } else if (type == REDIS_SET) {
@@@ -5128,6 -5127,7 +5127,7 @@@ static void listTypeConvert(robj *subje
  
      if (enc == REDIS_ENCODING_LIST) {
          list *l = listCreate();
+         listSetFreeMethod(l,decrRefCount);
  
          /* listTypeGet returns a robj with incremented refcount */
          li = listTypeInitIterator(subject,0,REDIS_TAIL);
@@@ -7918,7 -7918,6 +7918,7 @@@ static void discardCommand(redisClient 
      freeClientMultiState(c);
      initClientMultiState(c);
      c->flags &= (~REDIS_MULTI);
 +    unwatchAllKeys(c);
      addReply(c,shared.ok);
  }