From ad085f9ba15c131fc5cc77086a620f2e366aac7c Mon Sep 17 00:00:00 2001 From: Russell Yanofsky Date: Mon, 30 Aug 2021 21:04:06 -0400 Subject: multiprocess: Delay wallet client construction Delay wallet client construction until after logging, thread and other init for two reasons: - More responsive multiprocess GUI startup. When bitcoin-gui is started this moves the call from bitcoin-gui to bitcoin-node that spawns bitcoin-wallet off of the GUI event thread and onto the background GUI init executor thread. - Avoids feature_logging.py test failures with bitcoin-node by making bitcoin-wallet logging start after bitcoin-node logging starts, because the tests are not written to handle the bitcoin-wallet logging init code running first. This partially reverts commit b266b3e0bf29d0f3d5deaeec62d57c5025b35525, moving wallet client creation back to the place it was located before. --- src/node/interfaces.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/node/interfaces.cpp') diff --git a/src/node/interfaces.cpp b/src/node/interfaces.cpp index c62d7e5d0b..b1d39cd00a 100644 --- a/src/node/interfaces.cpp +++ b/src/node/interfaces.cpp @@ -281,6 +281,10 @@ public: { return MakeHandler(::uiInterface.ShowProgress_connect(fn)); } + std::unique_ptr handleInitWallet(InitWalletFn fn) override + { + return MakeHandler(::uiInterface.InitWallet_connect(fn)); + } std::unique_ptr handleNotifyNumConnectionsChanged(NotifyNumConnectionsChangedFn fn) override { return MakeHandler(::uiInterface.NotifyNumConnectionsChanged_connect(fn)); -- cgit v1.2.3