From c7b6117debf4ebabc464a55b840bdd7bdeb94fa3 Mon Sep 17 00:00:00 2001 From: Jeff Garzik Date: Thu, 14 Aug 2014 12:32:34 -0400 Subject: Create new signal for notification of new blocks. Use w/ -blocknotify --- src/init.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/init.cpp') diff --git a/src/init.cpp b/src/init.cpp index 8ae228bbb..494342c69 100644 --- a/src/init.cpp +++ b/src/init.cpp @@ -367,6 +367,14 @@ std::string LicenseInfo() "\n"; } +static void BlockNotifyCallback(const uint256& hashNewTip) +{ + std::string strCmd = GetArg("-blocknotify", ""); + + boost::replace_all(strCmd, "%s", hashNewTip.GetHex()); + boost::thread t(runCommand, strCmd); // thread runs free +} + struct CImportingNow { CImportingNow() { @@ -1184,6 +1192,9 @@ bool AppInit2(boost::thread_group& threadGroup) #endif // !ENABLE_WALLET // ********************************************************* Step 9: import blocks + if (mapArgs.count("-blocknotify")) + uiInterface.NotifyBlockTip.connect(BlockNotifyCallback); + // scan for better chains in the block chain database, that are not yet connected in the active best chain CValidationState state; if (!ActivateBestChain(state)) -- cgit v1.2.3