diff options
author | Russell Yanofsky <russ@yanofsky.org> | 2019-09-17 19:05:26 -0400 |
---|---|---|
committer | Russell Yanofsky <russ@yanofsky.org> | 2019-10-28 10:30:51 -0400 |
commit | 362ded410b8cb1104b7ef31ff8488fec4824a7d5 (patch) | |
tree | 0ffc9c199a3b7adcb9957b19824bff8c0fe33bb0 /src/test | |
parent | 8922d7f6b751a3e6b3b9f6fb7961c442877fb65a (diff) | |
download | bitcoin-362ded410b8cb1104b7ef31ff8488fec4824a7d5.tar.xz |
Avoid using g_rpc_node global in wallet code
Wallet code should use interfaces::Chain and not directly access to node state.
Add a g_rpc_chain replacement global for wallet code to use, and move
g_rpc_node definition to a libbitcoin_server source file so there are link
errors if wallet code tries to access it.
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/setup_common.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/test/setup_common.cpp b/src/test/setup_common.cpp index 4efd3d42c4..89a19e172d 100644 --- a/src/test/setup_common.cpp +++ b/src/test/setup_common.cpp @@ -15,6 +15,7 @@ #include <net.h> #include <noui.h> #include <pow.h> +#include <rpc/blockchain.h> #include <rpc/register.h> #include <rpc/server.h> #include <script/sigcache.h> @@ -76,6 +77,7 @@ TestingSetup::TestingSetup(const std::string& chainName) : BasicTestingSetup(cha const CChainParams& chainparams = Params(); // Ideally we'd move all the RPC tests to the functional testing framework // instead of unit tests, but for now we need these here. + g_rpc_node = &m_node; RegisterAllCoreRPCCommands(tableRPC); // We have to run a scheduler thread to prevent ActivateBestChain @@ -114,6 +116,7 @@ TestingSetup::~TestingSetup() threadGroup.join_all(); GetMainSignals().FlushBackgroundCallbacks(); GetMainSignals().UnregisterBackgroundSignalScheduler(); + g_rpc_node = nullptr; m_node.connman.reset(); m_node.banman.reset(); UnloadBlockIndex(); |