From f74894480db5dfbf49534499f489357ee9984183 Mon Sep 17 00:00:00 2001 From: Matt Corallo Date: Mon, 11 Jun 2018 15:13:04 -0400 Subject: Only set fNewBlock to true in AcceptBlock when we write to disk The only affect this should have is fixing the return code in submitblock in cases where a block fails ContextualCheckBlock and not setting nLastBlockTime on peers that provide blocks which fail ContextualCheckBlock (which is only used in eviction and cosmetic). --- src/validation.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/validation.cpp b/src/validation.cpp index 9791d6e2d8..dbfbfc16a0 100644 --- a/src/validation.cpp +++ b/src/validation.cpp @@ -3513,7 +3513,6 @@ bool CChainState::AcceptBlock(const std::shared_ptr& pblock, CVali // request; don't process these. if (pindex->nChainWork < nMinimumChainWork) return true; } - if (fNewBlock) *fNewBlock = true; if (!CheckBlock(block, state, chainparams.GetConsensus()) || !ContextualCheckBlock(block, state, chainparams.GetConsensus(), pindex->pprev)) { @@ -3530,6 +3529,7 @@ bool CChainState::AcceptBlock(const std::shared_ptr& pblock, CVali GetMainSignals().NewPoWValidBlock(pindex, pblock); // Write block to history file + if (fNewBlock) *fNewBlock = true; try { CDiskBlockPos blockPos = SaveBlockToDisk(block, pindex->nHeight, chainparams, dbp); if (blockPos.IsNull()) { -- cgit v1.2.3