aboutsummaryrefslogtreecommitdiff
path: root/src/validation.cpp
diff options
context:
space:
mode:
authorCarl Dong <contact@carldong.me>2020-08-25 16:40:21 -0400
committerCarl Dong <contact@carldong.me>2021-01-28 14:15:26 -0500
commitb026e318c39f59a06e29f1b25c7f577e01b25ccb (patch)
treef47575cf7c0ecbd69ae57817cc39a8b2f5fe02c2 /src/validation.cpp
parent3664a150ac7547c9336b571557af223d9e31aac9 (diff)
downloadbitcoin-b026e318c39f59a06e29f1b25c7f577e01b25ccb.tar.xz
validation: Move FindForkInGlobalIndex to BlockManager
[META] This commit should be followed up by removing the comments and assertions meant only to show that the change is correct. FindForkInGlobalIndex only acts on BlockManager. Note to reviewers: Since FindForkInGlobalIndex is always called with ::ChainActive() as its first parameter, it is possible to move FindForkInGlobalIndex to CChainState and remove this const CChain& parameter to instead use m_chain. However, it seems like the original intention was for FindForkInGlobalIndex to work with _any_ chain, not just the current active chain. Let me know if this should be changed.
Diffstat (limited to 'src/validation.cpp')
-rw-r--r--src/validation.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/validation.cpp b/src/validation.cpp
index cabceca91b..69207fb529 100644
--- a/src/validation.cpp
+++ b/src/validation.cpp
@@ -175,14 +175,15 @@ CBlockIndex* BlockManager::LookupBlockIndex(const uint256& hash)
return it == m_block_index.end() ? nullptr : it->second;
}
-CBlockIndex* FindForkInGlobalIndex(const CChain& chain, const CBlockLocator& locator)
+CBlockIndex* BlockManager::FindForkInGlobalIndex(const CChain& chain, const CBlockLocator& locator)
{
AssertLockHeld(cs_main);
+ assert(std::addressof(g_chainman.m_blockman) == std::addressof(*this));
// Find the latest block common to locator and chain - we expect that
// locator.vHave is sorted descending by height.
for (const uint256& hash : locator.vHave) {
- CBlockIndex* pindex = g_chainman.m_blockman.LookupBlockIndex(hash);
+ CBlockIndex* pindex = LookupBlockIndex(hash);
if (pindex) {
if (chain.Contains(pindex))
return pindex;