From: Michael Altizer (mialtize) Date: Wed, 23 Jan 2019 01:07:54 +0000 (-0500) Subject: Merge pull request #1488 in SNORT/snort3 from ~KETJEN/snort3:lru_cache_changes to... X-Git-Tag: 3.0.0-251~62 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a2cc36a5e4002a75fa16bb6eb702c85c23adbd7d;p=thirdparty%2Fsnort3.git Merge pull request #1488 in SNORT/snort3 from ~KETJEN/snort3:lru_cache_changes to master Squashed commit of the following: commit a46e75f30321724c22d3cb9d47e362664c60c029 Author: ketjen Date: Fri Jan 11 18:58:32 2019 -0800 hash: Added lru_cache_shared.h to HASH_INCLUDES commit 5fbf496e9ecffd0e4b5d8d6e511b2c210f6b3e74 Author: ketjen Date: Fri Jan 11 18:58:00 2019 -0800 hash: Moved list_iter assignment inside to avoid improper memory access in LruCacheShared --- diff --git a/src/hash/CMakeLists.txt b/src/hash/CMakeLists.txt index 99b23278f..f21b36c5b 100644 --- a/src/hash/CMakeLists.txt +++ b/src/hash/CMakeLists.txt @@ -3,13 +3,13 @@ set (HASH_INCLUDES hashes.h ghash.h xhash.h - hashfcn.h + hashfcn.h + lru_cache_shared.h ) add_library( hash OBJECT ${HASH_INCLUDES} hashes.cc - lru_cache_shared.h lru_cache_shared.cc ghash.cc hashfcn.cc diff --git a/src/hash/lru_cache_shared.h b/src/hash/lru_cache_shared.h index c7625e51f..0ea20de9a 100644 --- a/src/hash/lru_cache_shared.h +++ b/src/hash/lru_cache_shared.h @@ -155,9 +155,9 @@ bool LruCacheShared::set_max_size(size_t newsize) std::lock_guard cache_lock(cache_mutex); // Remove the oldest entries if we have to reduce cache size. - list_iter=list.end(); while (current_size > newsize) { + list_iter = list.end(); --list_iter; current_size--; map.erase(list_iter->first);