mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-13 07:28:59 +01:00
Merge #15457: Check std::system for -[alert|block|wallet]notify
f874e14cd3[build]: check std::system for -[alert|block|wallet]notify (Sjors Provoost)cc3ad56ff2[build] MSVC: set HAVE_SYSTEM for desktop apps (Sjors Provoost)c1c91bb78d[build] detect std::system or ::wsystem (Sjors Provoost) Pull request description: Platforms such as iOs and Universal Windows Platform do not support launching a process through system(). ACKs for top commit: laanwj: code review ACKf874e14cd3Tree-SHA512: 16bb4a8fa1896046ccb22a46c8985e1aa45f5b11ecf5539eb2299e9a58f1a5b085c0c12cb6939c7493d93abce7e84fadcbfc73374c887db63da6d00c08aa476d
This commit is contained in:
@@ -376,10 +376,14 @@ void SetupServerArgs()
|
||||
"-allowselfsignedrootcertificates", "-choosedatadir", "-lang=<lang>", "-min", "-resetguisettings", "-rootcertificates=<file>", "-splash", "-uiplatform"};
|
||||
|
||||
gArgs.AddArg("-version", "Print version and exit", false, OptionsCategory::OPTIONS);
|
||||
#if defined(HAVE_SYSTEM)
|
||||
gArgs.AddArg("-alertnotify=<cmd>", "Execute command when a relevant alert is received or we see a really long fork (%s in cmd is replaced by message)", false, OptionsCategory::OPTIONS);
|
||||
#endif
|
||||
gArgs.AddArg("-assumevalid=<hex>", strprintf("If this block is in the chain assume that it and its ancestors are valid and potentially skip their script verification (0 to verify all, default: %s, testnet: %s)", defaultChainParams->GetConsensus().defaultAssumeValid.GetHex(), testnetChainParams->GetConsensus().defaultAssumeValid.GetHex()), false, OptionsCategory::OPTIONS);
|
||||
gArgs.AddArg("-blocksdir=<dir>", "Specify directory to hold blocks subdirectory for *.dat files (default: <datadir>)", false, OptionsCategory::OPTIONS);
|
||||
#if defined(HAVE_SYSTEM)
|
||||
gArgs.AddArg("-blocknotify=<cmd>", "Execute command when the best block changes (%s in cmd is replaced by block hash)", false, OptionsCategory::OPTIONS);
|
||||
#endif
|
||||
gArgs.AddArg("-blockreconstructionextratxn=<n>", strprintf("Extra transactions to keep in memory for compact block reconstructions (default: %u)", DEFAULT_BLOCK_RECONSTRUCTION_EXTRA_TXN), false, OptionsCategory::OPTIONS);
|
||||
gArgs.AddArg("-blocksonly", strprintf("Whether to reject transactions from network peers. Transactions from the wallet or RPC are not affected. (default: %u)", DEFAULT_BLOCKSONLY), false, OptionsCategory::OPTIONS);
|
||||
gArgs.AddArg("-conf=<file>", strprintf("Specify configuration file. Relative paths will be prefixed by datadir location. (default: %s)", BITCOIN_CONF_FILENAME), false, OptionsCategory::OPTIONS);
|
||||
@@ -579,6 +583,7 @@ std::string LicenseInfo()
|
||||
"\n";
|
||||
}
|
||||
|
||||
#if defined(HAVE_SYSTEM)
|
||||
static void BlockNotifyCallback(bool initialSync, const CBlockIndex *pBlockIndex)
|
||||
{
|
||||
if (initialSync || !pBlockIndex)
|
||||
@@ -591,6 +596,7 @@ static void BlockNotifyCallback(bool initialSync, const CBlockIndex *pBlockIndex
|
||||
t.detach(); // thread runs free
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
static bool fHaveGenesis = false;
|
||||
static Mutex g_genesis_wait_mutex;
|
||||
@@ -1708,8 +1714,10 @@ bool AppInitMain(InitInterfaces& interfaces)
|
||||
fHaveGenesis = true;
|
||||
}
|
||||
|
||||
#if defined(HAVE_SYSTEM)
|
||||
if (gArgs.IsArgSet("-blocknotify"))
|
||||
uiInterface.NotifyBlockTip_connect(BlockNotifyCallback);
|
||||
#endif
|
||||
|
||||
std::vector<fs::path> vImportFiles;
|
||||
for (const std::string& strFile : gArgs.GetArgs("-loadblock")) {
|
||||
|
||||
Reference in New Issue
Block a user