From f7b5b78bd9619647cbb60135a06769a0304f1abb Mon Sep 17 00:00:00 2001 From: Digital Artifex <7929434+DigitalArtifex@users.noreply.github.com> Date: Wed, 12 Aug 2026 07:45:01 -0400 Subject: [PATCH] Fixed sliding cache issue. fixes: #1 closes: #1 --- .../common/slidingcachecontroller.h | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/KomplexHubPlugin/common/slidingcachecontroller.h b/KomplexHubPlugin/common/slidingcachecontroller.h index 68541e1..a5b88e4 100644 --- a/KomplexHubPlugin/common/slidingcachecontroller.h +++ b/KomplexHubPlugin/common/slidingcachecontroller.h @@ -109,12 +109,12 @@ public: qsizetype internalIndex = this->internalIndex(index); - if(!internalBoundaryCheck(index)) + if(!internalBoundaryCheck(internalIndex)) { return defaultValue; } - return m_cache.at(index); + return m_cache.at(internalIndex); } /** @@ -142,17 +142,17 @@ public: qsizetype internalIndex = this->internalIndex(index); - if(!internalBoundaryCheck(index)) + if(!internalBoundaryCheck(internalIndex)) { return {}; } if(!internalBoundaryCheck(count - 1)) { - count = m_cache.count() - index; + count = m_cache.count() - internalIndex; } - return m_cache.mid(index, count); + return m_cache.mid(internalIndex, count); } /** @@ -235,7 +235,8 @@ public: return; } - + m_windowSize = windowSize; + Q_EMIT windowSizeChanged(); } protected: @@ -318,7 +319,7 @@ private: ); bool safe = false; - ((safe = index >= 0 && index < m_cache.count()), ...); + ((safe = ((index >= 0) && (index < m_cache.count()))), ...); return safe; } @@ -344,7 +345,7 @@ private: } } - while (index <= m_windowOffset - (SLIDING_CACHE_WINDOW_SIZE - SLIDING_CACHE_PREFETCH_THRESHOLD)) + while (index < m_windowOffset) { if(!slideBackward()) { @@ -587,7 +588,7 @@ private: * @brief m_windowSize * Override for window size */ - qsizetype m_windowSize = nullsize; + qsizetype m_windowSize = SLIDING_CACHE_WINDOW_SIZE; T defaultValue; };