@@ -507,7 +507,7 @@ class ChainImpl : public Chain
507
507
std::optional<int > getHeight () override
508
508
{
509
509
LOCK (::cs_main);
510
- const CChain& active = Assert (m_node. chainman )-> ActiveChain ();
510
+ const CChain& active = chainman (). ActiveChain ();
511
511
int height = active.Height ();
512
512
if (height >= 0 ) {
513
513
return height;
@@ -517,22 +517,22 @@ class ChainImpl : public Chain
517
517
uint256 getBlockHash (int height) override
518
518
{
519
519
LOCK (::cs_main);
520
- const CChain& active = Assert (m_node. chainman )-> ActiveChain ();
520
+ const CChain& active = chainman (). ActiveChain ();
521
521
CBlockIndex* block = active[height];
522
522
assert (block);
523
523
return block->GetBlockHash ();
524
524
}
525
525
bool haveBlockOnDisk (int height) override
526
526
{
527
527
LOCK (::cs_main);
528
- const CChain& active = Assert (m_node. chainman )-> ActiveChain ();
528
+ const CChain& active = chainman (). ActiveChain ();
529
529
CBlockIndex* block = active[height];
530
530
return block && ((block->nStatus & BLOCK_HAVE_DATA) != 0 ) && block->nTx > 0 ;
531
531
}
532
532
CBlockLocator getTipLocator () override
533
533
{
534
534
LOCK (::cs_main);
535
- const CChain& active = Assert (m_node. chainman )-> ActiveChain ();
535
+ const CChain& active = chainman (). ActiveChain ();
536
536
return active.GetLocator ();
537
537
}
538
538
CBlockLocator getActiveChainLocator (const uint256& block_hash) override
@@ -545,7 +545,7 @@ class ChainImpl : public Chain
545
545
std::optional<int > findLocatorFork (const CBlockLocator& locator) override
546
546
{
547
547
LOCK (::cs_main);
548
- const CChainState& active = Assert (m_node. chainman )-> ActiveChainstate ();
548
+ const CChainState& active = chainman (). ActiveChainstate ();
549
549
if (const CBlockIndex* fork = active.FindForkInGlobalIndex (locator)) {
550
550
return fork->nHeight ;
551
551
}
@@ -554,20 +554,20 @@ class ChainImpl : public Chain
554
554
bool findBlock (const uint256& hash, const FoundBlock& block) override
555
555
{
556
556
WAIT_LOCK (cs_main, lock);
557
- const CChain& active = Assert (m_node. chainman )-> ActiveChain ();
558
- return FillBlock (m_node. chainman -> m_blockman .LookupBlockIndex (hash), block, lock, active);
557
+ const CChain& active = chainman (). ActiveChain ();
558
+ return FillBlock (chainman (). m_blockman .LookupBlockIndex (hash), block, lock, active);
559
559
}
560
560
bool findFirstBlockWithTimeAndHeight (int64_t min_time, int min_height, const FoundBlock& block) override
561
561
{
562
562
WAIT_LOCK (cs_main, lock);
563
- const CChain& active = Assert (m_node. chainman )-> ActiveChain ();
563
+ const CChain& active = chainman (). ActiveChain ();
564
564
return FillBlock (active.FindEarliestAtLeast (min_time, min_height), block, lock, active);
565
565
}
566
566
bool findAncestorByHeight (const uint256& block_hash, int ancestor_height, const FoundBlock& ancestor_out) override
567
567
{
568
568
WAIT_LOCK (cs_main, lock);
569
- const CChain& active = Assert (m_node. chainman )-> ActiveChain ();
570
- if (const CBlockIndex* block = m_node. chainman -> m_blockman .LookupBlockIndex (block_hash)) {
569
+ const CChain& active = chainman (). ActiveChain ();
570
+ if (const CBlockIndex* block = chainman (). m_blockman .LookupBlockIndex (block_hash)) {
571
571
if (const CBlockIndex* ancestor = block->GetAncestor (ancestor_height)) {
572
572
return FillBlock (ancestor, ancestor_out, lock, active);
573
573
}
@@ -577,18 +577,18 @@ class ChainImpl : public Chain
577
577
bool findAncestorByHash (const uint256& block_hash, const uint256& ancestor_hash, const FoundBlock& ancestor_out) override
578
578
{
579
579
WAIT_LOCK (cs_main, lock);
580
- const CChain& active = Assert (m_node. chainman )-> ActiveChain ();
581
- const CBlockIndex* block = m_node. chainman -> m_blockman .LookupBlockIndex (block_hash);
582
- const CBlockIndex* ancestor = m_node. chainman -> m_blockman .LookupBlockIndex (ancestor_hash);
580
+ const CChain& active = chainman (). ActiveChain ();
581
+ const CBlockIndex* block = chainman (). m_blockman .LookupBlockIndex (block_hash);
582
+ const CBlockIndex* ancestor = chainman (). m_blockman .LookupBlockIndex (ancestor_hash);
583
583
if (block && ancestor && block->GetAncestor (ancestor->nHeight ) != ancestor) ancestor = nullptr ;
584
584
return FillBlock (ancestor, ancestor_out, lock, active);
585
585
}
586
586
bool findCommonAncestor (const uint256& block_hash1, const uint256& block_hash2, const FoundBlock& ancestor_out, const FoundBlock& block1_out, const FoundBlock& block2_out) override
587
587
{
588
588
WAIT_LOCK (cs_main, lock);
589
- const CChain& active = Assert (m_node. chainman )-> ActiveChain ();
590
- const CBlockIndex* block1 = m_node. chainman -> m_blockman .LookupBlockIndex (block_hash1);
591
- const CBlockIndex* block2 = m_node. chainman -> m_blockman .LookupBlockIndex (block_hash2);
589
+ const CChain& active = chainman (). ActiveChain ();
590
+ const CBlockIndex* block1 = chainman (). m_blockman .LookupBlockIndex (block_hash1);
591
+ const CBlockIndex* block2 = chainman (). m_blockman .LookupBlockIndex (block_hash2);
592
592
const CBlockIndex* ancestor = block1 && block2 ? LastCommonAncestor (block1, block2) : nullptr ;
593
593
// Using & instead of && below to avoid short circuiting and leaving
594
594
// output uninitialized. Cast bool to int to avoid -Wbitwise-instead-of-logical
@@ -701,7 +701,7 @@ class ChainImpl : public Chain
701
701
bool havePruned () override
702
702
{
703
703
LOCK (::cs_main);
704
- return m_node. chainman -> m_blockman .m_have_pruned ;
704
+ return chainman (). m_blockman .m_have_pruned ;
705
705
}
706
706
bool isReadyToBroadcast () override { return !node::fImporting && !node::fReindex && !isInitialBlockDownload (); }
707
707
bool isInitialBlockDownload () override {
@@ -723,7 +723,7 @@ class ChainImpl : public Chain
723
723
{
724
724
if (!old_tip.IsNull ()) {
725
725
LOCK (::cs_main);
726
- const CChain& active = Assert (m_node. chainman )-> ActiveChain ();
726
+ const CChain& active = chainman (). ActiveChain ();
727
727
if (old_tip == active.Tip ()->GetBlockHash ()) return ;
728
728
}
729
729
SyncWithValidationInterfaceQueue ();
@@ -777,7 +777,7 @@ class ChainImpl : public Chain
777
777
}
778
778
bool hasAssumedValidChain () override
779
779
{
780
- return Assert (m_node. chainman )-> IsSnapshotActive ();
780
+ return chainman (). IsSnapshotActive ();
781
781
}
782
782
783
783
NodeContext& m_node;
0 commit comments