diff --git a/src/rdb.c b/src/rdb.c index 5b4a6cc2a33f1c80f9debe7b8facbe8562ff106d..a6b33d4860aca38c7acd140a3250e75066354cd6 100644 --- a/src/rdb.c +++ b/src/rdb.c @@ -584,7 +584,7 @@ ssize_t rdbSaveObject(rio *rdb, robj *o) { if ((n = rdbSaveLen(rdb,ql->len)) == -1) return -1; nwritten += n; - do { + while(node) { if (quicklistNodeIsCompressed(node)) { void *data; size_t compress_len = quicklistGetLzf(node, &data); @@ -594,7 +594,8 @@ ssize_t rdbSaveObject(rio *rdb, robj *o) { if ((n = rdbSaveRawString(rdb,node->zl,node->sz)) == -1) return -1; nwritten += n; } - } while ((node = node->next)); + node = node->next; + } } else { serverPanic("Unknown list encoding"); }