diff options
author | Carl Dong <contact@carldong.me> | 2020-09-08 14:36:31 -0400 |
---|---|---|
committer | Carl Dong <contact@carldong.me> | 2020-09-14 10:42:45 -0400 |
commit | 4668ded6d6ea4299d998abbb57543f37519812e2 (patch) | |
tree | 40074f54b00208f7e4cdb1a141974040e7bf2cd3 /src | |
parent | 147d50d63e07f600b414273a9f6b84f9f4ad9696 (diff) | |
download | bitcoin-4668ded6d6ea4299d998abbb57543f37519812e2.tar.xz |
validation: Move ~CMainCleanup logic to ~BlockManager
~CMainCleanup:
1. Is vestigial
2. References the g_chainman global (we should minimize g_chainman refs)
3. Only acts on g_chainman.m_blockman
4. Does the same thing as BlockManager::Unload
Diffstat (limited to 'src')
-rw-r--r-- | src/validation.cpp | 14 | ||||
-rw-r--r-- | src/validation.h | 4 |
2 files changed, 4 insertions, 14 deletions
diff --git a/src/validation.cpp b/src/validation.cpp index bdbae66511..5beff88a01 100644 --- a/src/validation.cpp +++ b/src/validation.cpp @@ -5226,20 +5226,6 @@ double GuessVerificationProgress(const ChainTxData& data, const CBlockIndex *pin return std::min<double>(pindex->nChainTx / fTxTotal, 1.0); } -class CMainCleanup -{ -public: - CMainCleanup() {} - ~CMainCleanup() { - // block headers - BlockMap::iterator it1 = g_chainman.BlockIndex().begin(); - for (; it1 != g_chainman.BlockIndex().end(); it1++) - delete (*it1).second; - g_chainman.BlockIndex().clear(); - } -}; -static CMainCleanup instance_of_cmaincleanup; - Optional<uint256> ChainstateManager::SnapshotBlockhash() const { if (m_active_chainstate != nullptr) { // If a snapshot chainstate exists, it will always be our active. diff --git a/src/validation.h b/src/validation.h index 53c2dd65e5..12d1d4c91f 100644 --- a/src/validation.h +++ b/src/validation.h @@ -416,6 +416,10 @@ public: BlockValidationState& state, const CChainParams& chainparams, CBlockIndex** ppindex) EXCLUSIVE_LOCKS_REQUIRED(cs_main); + + ~BlockManager() { + Unload(); + } }; /** |