From 00f80cce27e7c25d89b5ddd2e15d9a5b28f74d23 Mon Sep 17 00:00:00 2001 From: John Sully Date: Sun, 16 Feb 2020 03:36:47 -0500 Subject: [PATCH] Fix leak when tombstone exists Former-commit-id: 3d0ccdf6d2ddc523a3532c46cf905023d207b8cb --- src/db.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/db.cpp b/src/db.cpp index 29067c975..c22ccaaf5 100644 --- a/src/db.cpp +++ b/src/db.cpp @@ -412,7 +412,9 @@ bool redisDbPersistentData::syncDelete(robj *key) auto itr = m_pdbSnapshot->find_cached_threadsafe(szFromObj(key)); if (itr != nullptr) { - dictAdd(m_pdictTombstone, sdsdup(szFromObj(key)), nullptr); + sds keyTombstone = sdsdup(szFromObj(key)); + if (dictAdd(m_pdictTombstone, keyTombstone, nullptr) != DICT_OK) + sdsfree(keyTombstone); } } if (g_pserver->cluster_enabled) slotToKeyDel(key);