Move all calls to CheckBlockIndex out of net-processing logic

This will result in many more calls to CheckBlockIndex when
connecting a list of headers (eg in ::HEADERS messages processing)
but its only enabled in debug mode, and that should mostly just be
during IBD, so it should be OK.
This commit is contained in:
Matt Corallo 2016-10-02 12:45:24 -04:00
parent d6ea737be1
commit d8670fb103
1 changed files with 2 additions and 4 deletions

View File

@ -3675,6 +3675,8 @@ static bool AcceptBlockHeader(const CBlockHeader& block, CValidationState& state
if (ppindex) if (ppindex)
*ppindex = pindex; *ppindex = pindex;
CheckBlockIndex(chainparams.GetConsensus());
return true; return true;
} }
@ -5827,8 +5829,6 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv,
return ProcessMessage(pfrom, NetMsgType::HEADERS, vHeadersMsg, nTimeReceived, chainparams, connman); return ProcessMessage(pfrom, NetMsgType::HEADERS, vHeadersMsg, nTimeReceived, chainparams, connman);
} }
} }
CheckBlockIndex(chainparams.GetConsensus());
} }
else if (strCommand == NetMsgType::BLOCKTXN && !fImporting && !fReindex) // Ignore blocks received while importing else if (strCommand == NetMsgType::BLOCKTXN && !fImporting && !fReindex) // Ignore blocks received while importing
@ -6025,8 +6025,6 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv,
} }
} }
} }
CheckBlockIndex(chainparams.GetConsensus());
} }
NotifyHeaderTip(); NotifyHeaderTip();