Skip to content
Permalink
Browse files

Merge pull request #8257 from CookiePLMonster/assert-fixes

Fixes to assertions
  • Loading branch information...
JosJuice committed Jul 22, 2019
2 parents da1fbbc + 518d96a commit 73a9b4148b9d96317a055b525ecf13f021869790
Showing with 15 additions and 20 deletions.
  1. +1 −1 Source/Core/Common/Assert.h
  2. +11 −19 Source/Core/Common/MsgHandler.cpp
  3. +3 −0 Source/Core/DolphinQt/Main.cpp
@@ -15,7 +15,7 @@
{ \
if (!(_a_)) \
{ \
if (!PanicYesNo(_fmt_ "\n\nIgnore and continue?", __VA_ARGS__)) \
if (!PanicYesNo(_fmt_, __VA_ARGS__)) \
Crash(); \
} \
} while (0)
@@ -83,35 +83,27 @@ std::string GetStringT(const char* string)
bool MsgAlert(bool yes_no, MsgType style, const char* format, ...)
{
// Read message and write it to the log
std::string caption;
const char* caption = "";
char buffer[2048];

static std::string info_caption;
static std::string warn_caption;
static std::string ques_caption;
static std::string crit_caption;

if (info_caption.empty())
{
info_caption = s_str_translator(_trans("Information"));
ques_caption = s_str_translator(_trans("Question"));
warn_caption = s_str_translator(_trans("Warning"));
crit_caption = s_str_translator(_trans("Critical"));
}
static const std::string info_caption = s_str_translator(_trans("Information"));
static const std::string warn_caption = s_str_translator(_trans("Question"));
static const std::string ques_caption = s_str_translator(_trans("Warning"));
static const std::string crit_caption = s_str_translator(_trans("Critical"));

switch (style)
{
case MsgType::Information:
caption = info_caption;
caption = info_caption.c_str();
break;
case MsgType::Question:
caption = ques_caption;
caption = ques_caption.c_str();
break;
case MsgType::Warning:
caption = warn_caption;
caption = warn_caption.c_str();
break;
case MsgType::Critical:
caption = crit_caption;
caption = crit_caption.c_str();
break;
}

@@ -120,13 +112,13 @@ bool MsgAlert(bool yes_no, MsgType style, const char* format, ...)
CharArrayFromFormatV(buffer, sizeof(buffer) - 1, s_str_translator(format).c_str(), args);
va_end(args);

ERROR_LOG(MASTER_LOG, "%s: %s", caption.c_str(), buffer);
ERROR_LOG(MASTER_LOG, "%s: %s", caption, buffer);

// Don't ignore questions, especially AskYesNo, PanicYesNo could be ignored
if (s_msg_handler != nullptr &&
(s_alert_enabled || style == MsgType::Question || style == MsgType::Critical))
{
return s_msg_handler(caption.c_str(), buffer, yes_no, style);
return s_msg_handler(caption, buffer, yes_no, style);
}

return true;
@@ -68,7 +68,10 @@ static bool QtMsgAlertHandler(const char* caption, const char* text, bool yes_no
return true;

if (button == QMessageBox::Ignore)
{
Common::SetEnableAlert(false);
return true;
}

return false;
});

0 comments on commit 73a9b41

Please sign in to comment.
You can’t perform that action at this time.