mirror of
https://github.com/dashpay/dash.git
synced 2024-12-26 12:32:48 +01:00
Merge #8257: Do not ask a UI question from bitcoind
1acf1db
Do not ask a UI question from bitcoind (Pieter Wuille)
This commit is contained in:
commit
ff03c50c00
@ -1326,8 +1326,9 @@ bool AppInit2(boost::thread_group& threadGroup, CScheduler& scheduler)
|
|||||||
if (!fLoaded) {
|
if (!fLoaded) {
|
||||||
// first suggest a reindex
|
// first suggest a reindex
|
||||||
if (!fReset) {
|
if (!fReset) {
|
||||||
bool fRet = uiInterface.ThreadSafeMessageBox(
|
bool fRet = uiInterface.ThreadSafeQuestion(
|
||||||
strLoadError + ".\n\n" + _("Do you want to rebuild the block database now?"),
|
strLoadError + ".\n\n" + _("Do you want to rebuild the block database now?"),
|
||||||
|
strLoadError + ".\nPlease restart with -reindex or -reindex-chainstate to recover.",
|
||||||
"", CClientUIInterface::MSG_ERROR | CClientUIInterface::BTN_ABORT);
|
"", CClientUIInterface::MSG_ERROR | CClientUIInterface::BTN_ABORT);
|
||||||
if (fRet) {
|
if (fRet) {
|
||||||
fReindex = true;
|
fReindex = true;
|
||||||
|
@ -39,6 +39,11 @@ static bool noui_ThreadSafeMessageBox(const std::string& message, const std::str
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static bool noui_ThreadSafeQuestion(const std::string& /* ignored interactive message */, const std::string& message, const std::string& caption, unsigned int style)
|
||||||
|
{
|
||||||
|
return noui_ThreadSafeMessageBox(message, caption, style);
|
||||||
|
}
|
||||||
|
|
||||||
static void noui_InitMessage(const std::string& message)
|
static void noui_InitMessage(const std::string& message)
|
||||||
{
|
{
|
||||||
LogPrintf("init message: %s\n", message);
|
LogPrintf("init message: %s\n", message);
|
||||||
@ -48,5 +53,6 @@ void noui_connect()
|
|||||||
{
|
{
|
||||||
// Connect bitcoind signal handlers
|
// Connect bitcoind signal handlers
|
||||||
uiInterface.ThreadSafeMessageBox.connect(noui_ThreadSafeMessageBox);
|
uiInterface.ThreadSafeMessageBox.connect(noui_ThreadSafeMessageBox);
|
||||||
|
uiInterface.ThreadSafeQuestion.connect(noui_ThreadSafeQuestion);
|
||||||
uiInterface.InitMessage.connect(noui_InitMessage);
|
uiInterface.InitMessage.connect(noui_InitMessage);
|
||||||
}
|
}
|
||||||
|
@ -1105,12 +1105,14 @@ void BitcoinGUI::subscribeToCoreSignals()
|
|||||||
{
|
{
|
||||||
// Connect signals to client
|
// Connect signals to client
|
||||||
uiInterface.ThreadSafeMessageBox.connect(boost::bind(ThreadSafeMessageBox, this, _1, _2, _3));
|
uiInterface.ThreadSafeMessageBox.connect(boost::bind(ThreadSafeMessageBox, this, _1, _2, _3));
|
||||||
|
uiInterface.ThreadSafeQuestion.connect(boost::bind(ThreadSafeMessageBox, this, _1, _3, _4));
|
||||||
}
|
}
|
||||||
|
|
||||||
void BitcoinGUI::unsubscribeFromCoreSignals()
|
void BitcoinGUI::unsubscribeFromCoreSignals()
|
||||||
{
|
{
|
||||||
// Disconnect signals from client
|
// Disconnect signals from client
|
||||||
uiInterface.ThreadSafeMessageBox.disconnect(boost::bind(ThreadSafeMessageBox, this, _1, _2, _3));
|
uiInterface.ThreadSafeMessageBox.disconnect(boost::bind(ThreadSafeMessageBox, this, _1, _2, _3));
|
||||||
|
uiInterface.ThreadSafeQuestion.disconnect(boost::bind(ThreadSafeMessageBox, this, _1, _3, _4));
|
||||||
}
|
}
|
||||||
|
|
||||||
UnitDisplayStatusBarControl::UnitDisplayStatusBarControl(const PlatformStyle *platformStyle) :
|
UnitDisplayStatusBarControl::UnitDisplayStatusBarControl(const PlatformStyle *platformStyle) :
|
||||||
|
@ -76,6 +76,9 @@ public:
|
|||||||
/** Show message box. */
|
/** Show message box. */
|
||||||
boost::signals2::signal<bool (const std::string& message, const std::string& caption, unsigned int style), boost::signals2::last_value<bool> > ThreadSafeMessageBox;
|
boost::signals2::signal<bool (const std::string& message, const std::string& caption, unsigned int style), boost::signals2::last_value<bool> > ThreadSafeMessageBox;
|
||||||
|
|
||||||
|
/** If possible, ask the user a question. If not, falls back to ThreadSafeMessageBox(noninteractive_message, caption, style) and returns false. */
|
||||||
|
boost::signals2::signal<bool (const std::string& message, const std::string& noninteractive_message, const std::string& caption, unsigned int style), boost::signals2::last_value<bool> > ThreadSafeQuestion;
|
||||||
|
|
||||||
/** Progress message during initialization. */
|
/** Progress message during initialization. */
|
||||||
boost::signals2::signal<void (const std::string &message)> InitMessage;
|
boost::signals2::signal<void (const std::string &message)> InitMessage;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user