mirror of
https://github.com/ElementsProject/elements.git
synced 2026-08-17 13:07:54 +02:00
Merge fc037c8c83 into merged_master (Bitcoin PR bitcoin/bitcoin#27150)
This commit is contained in:
commit
0ab95ded19
16 changed files with 221 additions and 153 deletions
|
|
@ -9,6 +9,7 @@
|
|||
|
||||
#include <chainparams.h>
|
||||
#include <clientversion.h>
|
||||
#include <common/init.h>
|
||||
#include <common/url.h>
|
||||
#include <compat/compat.h>
|
||||
#include <init.h>
|
||||
|
|
@ -120,7 +121,7 @@ static bool AppInit(NodeContext& node, int argc, char* argv[])
|
|||
SetupServerArgs(args);
|
||||
std::string error;
|
||||
if (!args.ParseParameters(argc, argv, error)) {
|
||||
return InitError(Untranslated(strprintf("Error parsing command line arguments: %s\n", error)));
|
||||
return InitError(Untranslated(strprintf("Error parsing command line arguments: %s", error)));
|
||||
}
|
||||
|
||||
// Process help and version before taking care about datadir
|
||||
|
|
@ -150,31 +151,17 @@ static bool AppInit(NodeContext& node, int argc, char* argv[])
|
|||
std::any context{&node};
|
||||
try
|
||||
{
|
||||
if (!CheckDataDirOption(args)) {
|
||||
return InitError(Untranslated(strprintf("Specified data directory \"%s\" does not exist.\n", args.GetArg("-datadir", ""))));
|
||||
}
|
||||
if (!args.ReadConfigFiles(error, true)) {
|
||||
return InitError(Untranslated(strprintf("Error reading configuration file: %s\n", error)));
|
||||
}
|
||||
// Check for chain settings (Params() calls are only valid after this clause)
|
||||
try {
|
||||
SelectParams(args.GetChainName());
|
||||
} catch (const std::exception& e) {
|
||||
return InitError(Untranslated(strprintf("%s\n", e.what())));
|
||||
if (auto error = common::InitConfig(args)) {
|
||||
return InitError(error->message, error->details);
|
||||
}
|
||||
|
||||
// Error out when loose non-argument tokens are encountered on command line
|
||||
for (int i = 1; i < argc; i++) {
|
||||
if (!IsSwitchChar(argv[i][0])) {
|
||||
return InitError(Untranslated(strprintf("Command line contains unexpected token '%s', see elementsd -h for a list of options.\n", argv[i])));
|
||||
return InitError(Untranslated(strprintf("Command line contains unexpected token '%s', see bitcoind -h for a list of options.", argv[i])));
|
||||
}
|
||||
}
|
||||
|
||||
if (!args.InitSettings(error)) {
|
||||
InitError(Untranslated(error));
|
||||
return false;
|
||||
}
|
||||
|
||||
// -server defaults to true for bitcoind but not for the GUI so do this here
|
||||
args.SoftSetBoolArg("-server", true);
|
||||
// Set this early so that parameter interactions go to console
|
||||
|
|
@ -210,7 +197,7 @@ static bool AppInit(NodeContext& node, int argc, char* argv[])
|
|||
}
|
||||
break;
|
||||
case -1: // Error happened.
|
||||
return InitError(Untranslated(strprintf("fork_daemon() failed: %s\n", SysErrorString(errno))));
|
||||
return InitError(Untranslated(strprintf("fork_daemon() failed: %s", SysErrorString(errno))));
|
||||
default: { // Parent: wait and exit.
|
||||
int token = daemon_ep.TokenRead();
|
||||
if (token) { // Success
|
||||
|
|
@ -222,7 +209,7 @@ static bool AppInit(NodeContext& node, int argc, char* argv[])
|
|||
}
|
||||
}
|
||||
#else
|
||||
return InitError(Untranslated("-daemon is not supported on this operating system\n"));
|
||||
return InitError(Untranslated("-daemon is not supported on this operating system"));
|
||||
#endif // HAVE_DECL_FORK
|
||||
}
|
||||
// Lock data directory after daemonization
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue