mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-01-18 22:35:39 +01:00
validation: only call UpdatedBlockTip for active chainstate
This notification isn't needed for background chainstates. `kernel::Notifications::blockTip` are also skipped.
This commit is contained in:
@@ -3263,7 +3263,7 @@ bool Chainstate::ActivateBestChain(BlockValidationState& state, std::shared_ptr<
|
||||
|
||||
// Notify external listeners about the new tip.
|
||||
// Enqueue while holding cs_main to ensure that UpdatedBlockTip is called in the order in which blocks are connected
|
||||
if (pindexFork != pindexNewTip) {
|
||||
if (this == &m_chainman.ActiveChainstate() && pindexFork != pindexNewTip) {
|
||||
// Notify ValidationInterface subscribers
|
||||
GetMainSignals().UpdatedBlockTip(pindexNewTip, pindexFork, still_in_ibd);
|
||||
|
||||
|
||||
@@ -87,7 +87,7 @@ protected:
|
||||
* but may not be called on every intermediate tip. If the latter behavior is desired,
|
||||
* subscribe to BlockConnected() instead.
|
||||
*
|
||||
* Called on a background thread.
|
||||
* Called on a background thread. Only called for the active chainstate.
|
||||
*/
|
||||
virtual void UpdatedBlockTip(const CBlockIndex *pindexNew, const CBlockIndex *pindexFork, bool fInitialDownload) {}
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user