Downgrade severity of messages generated by Qt implementation qErrnoWarning.

This commit is contained in:
Klaus Basan
2018-09-19 03:45:38 +02:00
parent 978fc42fe5
commit bfd907e6e3

View File

@@ -13,6 +13,7 @@
#include "blackmisc/compare.h"
#include "blackmisc/loghandler.h"
#include "blackmisc/worker.h"
#include "blackconfig/buildconfig.h"
#include <QCoreApplication>
#include <QGlobalStatic>
@@ -124,8 +125,16 @@ namespace BlackMisc
return m_enableFallThrough;
}
void CLogHandler::logLocalMessage(const CStatusMessage &statusMessage)
void CLogHandler::logLocalMessage(const CStatusMessage &i_statusMessage)
{
using namespace BlackConfig;
CStatusMessage statusMessage = i_statusMessage;
if (CBuildConfig::isLocalDeveloperDebugBuild() && CLogPattern::empty().withSeverity(CStatusMessage::SeverityError).match(statusMessage))
{
// 99% this is a complex Qt implementation warning generated by qErrnoWarning, so downgrade its severity
statusMessage.setSeverity(CStatusMessage::SeverityDebug);
}
using namespace BlackMisc::PhysicalQuantities;
auto bucket = m_tokenBuckets.find(statusMessage);
if (bucket == m_tokenBuckets.end()) { bucket = m_tokenBuckets.insert(statusMessage, { { 5, CTime(1, CTimeUnit::s()), 1 }, 0 }); }