diff --git a/src/test/validation_chainstate_tests.cpp b/src/test/validation_chainstate_tests.cpp --- a/src/test/validation_chainstate_tests.cpp +++ b/src/test/validation_chainstate_tests.cpp @@ -34,9 +34,8 @@ return outp; }; - ENTER_CRITICAL_SECTION(cs_main); - CChainState &c1 = manager.InitializeChainstate(); - LEAVE_CRITICAL_SECTION(cs_main); + CChainState &c1 = + *WITH_LOCK(cs_main, return &manager.InitializeChainstate()); c1.InitCoinsDB( /* cache_size_bytes */ 1 << 23, /* in_memory */ true, /* should_wipe */ false); diff --git a/src/test/validation_chainstatemanager_tests.cpp b/src/test/validation_chainstatemanager_tests.cpp --- a/src/test/validation_chainstatemanager_tests.cpp +++ b/src/test/validation_chainstatemanager_tests.cpp @@ -56,11 +56,9 @@ // Create a snapshot-based chainstate. // - ENTER_CRITICAL_SECTION(cs_main); CChainState &c2 = *WITH_LOCK( ::cs_main, return &manager.InitializeChainstate(BlockHash{GetRandHash()})); - LEAVE_CRITICAL_SECTION(cs_main); chainstates.push_back(&c2); c2.InitCoinsDB( /* cache_size_bytes */ 1 << 23, /* in_memory */ true, @@ -120,9 +118,8 @@ // Create a legacy (IBD) chainstate. // - ENTER_CRITICAL_SECTION(cs_main); - CChainState &c1 = manager.InitializeChainstate(); - LEAVE_CRITICAL_SECTION(cs_main); + CChainState &c1 = + *WITH_LOCK(cs_main, return &manager.InitializeChainstate()); chainstates.push_back(&c1); c1.InitCoinsDB( /* cache_size_bytes */ 1 << 23, /* in_memory */ true, @@ -140,9 +137,8 @@ // Create a snapshot-based chainstate. // - ENTER_CRITICAL_SECTION(cs_main); - CChainState &c2 = manager.InitializeChainstate(BlockHash{GetRandHash()}); - LEAVE_CRITICAL_SECTION(cs_main); + CChainState &c2 = *WITH_LOCK(cs_main, return &manager.InitializeChainstate( + BlockHash{GetRandHash()})); chainstates.push_back(&c2); c2.InitCoinsDB( /* cache_size_bytes */ 1 << 23, /* in_memory */ true,