Skip to content

Commit

Permalink
Merge bitcoin/bitcoin#30388: validation: Check if mempool exists befo…
Browse files Browse the repository at this point in the history
…re size check in ActivateSnapshot

33c48c1 validation: Check if mempool exists before asserting in ActivateSnapshot (TheCharlatan)

Pull request description:

  The mempool is an optional component of the chainstate manager, so don't assume its presence and instead check if it is there first.

ACKs for top commit:
  maflcko:
    re-ACK 33c48c1
  fjahr:
    ACK 33c48c1

Tree-SHA512: 7a3568d5b7af45efa7bf54bae7bac1f00dc99bc9d47a744d73594f283c952be9500168f680d72f4aee09761da4e878ddca83ba675cdea8ee9e44eeff00ac09da
  • Loading branch information
glozow committed Jul 4, 2024
2 parents 5c0cd20 + 33c48c1 commit aa61d4f
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion src/validation.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5681,7 +5681,8 @@ util::Result<void> ChainstateManager::ActivateSnapshot(
return util::Error{strprintf(_("The base block header (%s) is part of an invalid chain."), base_blockhash.ToString())};
}

if (Assert(m_active_chainstate->GetMempool())->size() > 0) {
auto mempool{m_active_chainstate->GetMempool()};
if (mempool && mempool->size() > 0) {
return util::Error{_("Can't activate a snapshot when mempool not empty.")};
}
}
Expand Down

0 comments on commit aa61d4f

Please sign in to comment.