diff --git a/core/src/Variable/VariableController.cpp b/core/src/Variable/VariableController.cpp index 07674c7..32a44b3 100644 --- a/core/src/Variable/VariableController.cpp +++ b/core/src/Variable/VariableController.cpp @@ -574,8 +574,13 @@ void VariableController::VariableControllerPrivate::processRequest(std::shared_p auto varStrategyRangesRequested = m_VariableCacheStrategy->computeStrategyRanges(var->range(), rangeRequested); - auto notInCacheRangeList = var->provideNotInCacheRangeList(varStrategyRangesRequested.second); - auto inCacheRangeList = var->provideInCacheRangeList(varStrategyRangesRequested.second); + + auto notInCacheRangeList = QVector{varStrategyRangesRequested.second}; + auto inCacheRangeList = QVector{}; + if (m_VarIdToVarRequestIdQueueMap.find(varId) == m_VarIdToVarRequestIdQueueMap.cend()) { + notInCacheRangeList = var->provideNotInCacheRangeList(varStrategyRangesRequested.second); + inCacheRangeList = var->provideInCacheRangeList(varStrategyRangesRequested.second); + } if (!notInCacheRangeList.empty()) { varRequest.m_RangeRequested = varStrategyRangesRequested.first;