From a0d3461d9b6bd695ad2b2a21e0a358b716a0b590 Mon Sep 17 00:00:00 2001 From: Mathew Sutcliffe Date: Tue, 28 Feb 2017 20:10:52 +0000 Subject: [PATCH] refs #884 CValueCache::getAllValues should skip empty values. --- src/blackmisc/valuecache.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/blackmisc/valuecache.cpp b/src/blackmisc/valuecache.cpp index 8e18317ad..5aff549b9 100644 --- a/src/blackmisc/valuecache.cpp +++ b/src/blackmisc/valuecache.cpp @@ -205,6 +205,7 @@ namespace BlackMisc CVariantMap map; for (const auto &element : elementsStartingWith(keyPrefix)) { + if (! element->m_value.isValid()) { continue; } implementationOf(map).insert(map.cend(), element->m_key, element->m_value); } return map; @@ -217,7 +218,9 @@ namespace BlackMisc for (const auto &key : keys) { auto it = m_elements.constFind(key); - if (it != m_elements.cend()) { map.insert(key, (*it)->m_value); } + if (it == m_elements.cend()) { continue; } + if (! (*it)->m_value.isValid()) { continue; } + map.insert(key, (*it)->m_value); } return map; } @@ -228,6 +231,7 @@ namespace BlackMisc CValueCachePacket map; for (const auto &element : elementsStartingWith(keyPrefix)) { + if (! element->m_value.isValid()) { continue; } map.insert(element->m_key, element->m_value, element->m_timestamp); } return map;