diff --git a/src/shutdown.h b/src/shutdown.h --- a/src/shutdown.h +++ b/src/shutdown.h @@ -6,6 +6,12 @@ #ifndef BITCOIN_SHUTDOWN_H #define BITCOIN_SHUTDOWN_H +#include // For bilingual_str + +/** Abort with a message */ +bool AbortNode(const std::string &strMessage, + bilingual_str user_message = bilingual_str{}); + void StartShutdown(); void AbortShutdown(); bool ShutdownRequested(); diff --git a/src/shutdown.cpp b/src/shutdown.cpp --- a/src/shutdown.cpp +++ b/src/shutdown.cpp @@ -5,8 +5,24 @@ #include +#include +#include +#include + #include +bool AbortNode(const std::string &strMessage, bilingual_str user_message) { + SetMiscWarning(Untranslated(strMessage)); + LogPrintf("*** %s\n", strMessage); + if (user_message.empty()) { + user_message = + _("A fatal internal error occurred, see debug.log for details"); + } + AbortError(user_message); + StartShutdown(); + return false; +} + static std::atomic fRequestShutdown(false); void StartShutdown() { diff --git a/src/validation.cpp b/src/validation.cpp --- a/src/validation.cpp +++ b/src/validation.cpp @@ -1337,20 +1337,6 @@ return true; } -/** Abort with a message */ -static bool AbortNode(const std::string &strMessage, - bilingual_str user_message = bilingual_str()) { - SetMiscWarning(Untranslated(strMessage)); - LogPrintf("*** %s\n", strMessage); - if (!user_message.empty()) { - user_message = - _("A fatal internal error occurred, see debug.log for details"); - } - AbortError(user_message); - StartShutdown(); - return false; -} - static bool AbortNode(BlockValidationState &state, const std::string &strMessage, const bilingual_str &userMessage = bilingual_str()) {