From b9e4cdc1872449e5ef612d4ac9158f266c1e6258 Mon Sep 17 00:00:00 2001 From: UdjinM6 Date: Sat, 2 Dec 2023 02:02:59 +0300 Subject: [PATCH] fix: actually use `to_calculate` stack in `CMNHFManager::GetForBlock` --- src/evo/mnhftx.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/evo/mnhftx.cpp b/src/evo/mnhftx.cpp index 46c4868a855d..853ff3efc2df 100644 --- a/src/evo/mnhftx.cpp +++ b/src/evo/mnhftx.cpp @@ -278,12 +278,13 @@ CMNHFManager::Signals CMNHFManager::GetForBlock(const CBlockIndex* pindex) const Consensus::Params& consensusParams{Params().GetConsensus()}; while (!to_calculate.empty()) { + const CBlockIndex* pindex_top{to_calculate.top()}; CBlock block; - if (!ReadBlockFromDisk(block, pindex, consensusParams)) { + if (!ReadBlockFromDisk(block, pindex_top, consensusParams)) { throw std::runtime_error("failed-getehfforblock-read"); } BlockValidationState state; - signalsTmp = ProcessBlock(block, pindex, false, state); + signalsTmp = ProcessBlock(block, pindex_top, false, state); if (!signalsTmp.has_value()) { LogPrintf("%s: process block failed due to %s\n", __func__, state.ToString()); throw std::runtime_error("failed-getehfforblock-construct");