diff --git a/src/dht.cpp b/src/dht.cpp
index 39a5df0807632ebd842e6f05ee7414e528661a28..d647f80b8c7f6d42b198a9577b9dc4e6b738b710 100644
--- a/src/dht.cpp
+++ b/src/dht.cpp
@@ -1725,7 +1725,7 @@ Dht::expireStorage()
         total_store_size += stats.first;
         total_values += stats.second;
 
-        if (i->empty() && i->listeners.empty()) {
+        if (i->empty() && i->listeners.empty() && i->local_listeners.empty()) {
             DHT_LOG.DEBUG("Discarding expired value %s", i->id.toString().c_str());
             i = store.erase(i);
         }