Improve error message for failed error formatting

master
BlackMark 2020-07-05 17:44:20 +02:00
parent dc282b6ab5
commit 3361dcf088
3 changed files with 7 additions and 9 deletions

View File

@ -1,10 +1,6 @@
#include "log_tr.hpp"
namespace detail {
LogTr log_tr(const char* formatString)
detail::LogTr log_tr(const char* formatString)
{
return detail::LogTr(formatString);
}
} // namespace detail

View File

@ -19,6 +19,8 @@ class LogTr {
return m_utf8String.constData();
}
operator QString() const { return m_string; }
template<typename... Args>
LogTr& arg(Args&&... args)
{
@ -31,8 +33,8 @@ class LogTr {
QByteArray m_utf8String;
};
LogTr log_tr(const char* formatString);
} // namespace detail
#define ltr(FormatString) "%s", (const char*)detail::log_tr(FormatString)
detail::LogTr log_tr(const char* formatString);
#define ltr(FormatString) "%s", (const char*)log_tr(FormatString)

View File

@ -43,7 +43,7 @@ static QString getLastErrorString()
const auto formatFlags = FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS;
if(FormatMessage(formatFlags, nullptr, lastErrorId, 0, reinterpret_cast<LPTSTR>(&msgBuf), 0, nullptr) == 0) {
return "FormatMessage failed";
return log_tr("FormatMessage failed with error code '%1' while formatting error message for code: %2").arg(GetLastError()).arg(lastErrorId);
}
const auto lastErrorString = fromTchar(msgBuf);