@@ -387,7 +387,7 @@ static void UpdateMempoolForReorg(CTxMemPool& mempool, DisconnectedBlockTransact
387
387
while (it != disconnectpool.queuedTx .get <insertion_order>().rend ()) {
388
388
// ignore validation errors in resurrected transactions
389
389
if (!fAddToMempool || (*it)->IsCoinBase () ||
390
- AcceptToMemoryPool (mempool, *it, true /* bypass_limits */ ).m_result_type != MempoolAcceptResult::ResultType::VALID) {
390
+ AcceptToMemoryPool (:: ChainstateActive (), mempool, *it, true /* bypass_limits */ ).m_result_type != MempoolAcceptResult::ResultType::VALID) {
391
391
// If the transaction doesn't make it in to the mempool, remove any
392
392
// transactions that depend on it (which would now be orphans).
393
393
mempool.removeRecursive (**it, MemPoolRemovalReason::REORG);
@@ -1103,7 +1103,13 @@ static MempoolAcceptResult AcceptToMemoryPoolWithTime(const CChainParams& chainp
1103
1103
1104
1104
MempoolAcceptResult AcceptToMemoryPool (CTxMemPool& pool, const CTransactionRef &tx, bool bypass_limits, bool test_accept)
1105
1105
{
1106
- return AcceptToMemoryPoolWithTime (Params (), pool, ::ChainstateActive (), tx, GetTime (), bypass_limits, test_accept);
1106
+ return AcceptToMemoryPool (::ChainstateActive (), pool, tx, bypass_limits, test_accept);
1107
+ }
1108
+
1109
+ MempoolAcceptResult AcceptToMemoryPool (CChainState& active_chainstate, CTxMemPool& pool, const CTransactionRef& tx, bool bypass_limits, bool test_accept)
1110
+ {
1111
+ assert (std::addressof (::ChainstateActive ()) == std::addressof (active_chainstate));
1112
+ return AcceptToMemoryPoolWithTime (Params (), pool, active_chainstate, tx, GetTime (), bypass_limits, test_accept);
1107
1113
}
1108
1114
1109
1115
CTransactionRef GetTransaction (const CBlockIndex* const block_index, const CTxMemPool* const mempool, const uint256& hash, const Consensus::Params& consensusParams, uint256& hashBlock)
0 commit comments