mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-03-05 14:06:27 -05:00
init: Capture copy of blocknotify setting for BlockNotifyCallback
Can be reviewed with --color-moved=dimmed-zebra --color-moved-ws=ignore-all-space
This commit is contained in:
parent
fa40017706
commit
fa33bc2dab
1 changed files with 14 additions and 16 deletions
30
src/init.cpp
30
src/init.cpp
|
@ -600,21 +600,6 @@ std::string LicenseInfo()
|
||||||
"\n";
|
"\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
#if HAVE_SYSTEM
|
|
||||||
static void BlockNotifyCallback(SynchronizationState sync_state, const CBlockIndex* pBlockIndex)
|
|
||||||
{
|
|
||||||
if (sync_state != SynchronizationState::POST_INIT || !pBlockIndex)
|
|
||||||
return;
|
|
||||||
|
|
||||||
std::string strCmd = gArgs.GetArg("-blocknotify", "");
|
|
||||||
if (!strCmd.empty()) {
|
|
||||||
boost::replace_all(strCmd, "%s", pBlockIndex->GetBlockHash().GetHex());
|
|
||||||
std::thread t(runCommand, strCmd);
|
|
||||||
t.detach(); // thread runs free
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static bool fHaveGenesis = false;
|
static bool fHaveGenesis = false;
|
||||||
static Mutex g_genesis_wait_mutex;
|
static Mutex g_genesis_wait_mutex;
|
||||||
static std::condition_variable g_genesis_wait_cv;
|
static std::condition_variable g_genesis_wait_cv;
|
||||||
|
@ -1847,8 +1832,21 @@ bool AppInitMain(const util::Ref& context, NodeContext& node, interfaces::BlockA
|
||||||
}
|
}
|
||||||
|
|
||||||
#if HAVE_SYSTEM
|
#if HAVE_SYSTEM
|
||||||
if (gArgs.IsArgSet("-blocknotify"))
|
if (args.IsArgSet("-blocknotify")) {
|
||||||
|
const std::string block_notify = args.GetArg("-blocknotify", "");
|
||||||
|
const auto BlockNotifyCallback = [block_notify](SynchronizationState sync_state, const CBlockIndex* pBlockIndex) {
|
||||||
|
if (sync_state != SynchronizationState::POST_INIT || !pBlockIndex)
|
||||||
|
return;
|
||||||
|
|
||||||
|
std::string strCmd = block_notify;
|
||||||
|
if (!strCmd.empty()) {
|
||||||
|
boost::replace_all(strCmd, "%s", pBlockIndex->GetBlockHash().GetHex());
|
||||||
|
std::thread t(runCommand, strCmd);
|
||||||
|
t.detach(); // thread runs free
|
||||||
|
}
|
||||||
|
};
|
||||||
uiInterface.NotifyBlockTip_connect(BlockNotifyCallback);
|
uiInterface.NotifyBlockTip_connect(BlockNotifyCallback);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
std::vector<fs::path> vImportFiles;
|
std::vector<fs::path> vImportFiles;
|
||||||
|
|
Loading…
Add table
Reference in a new issue