Print when logging rule is invalid.

Print a warning when an invalid logging rule is parsed.

Change-Id: I3bf9a6df4053d36b3803652b2faa86168d5222bc
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
This commit is contained in:
Kai Koehne 2014-02-28 17:18:09 +01:00 committed by The Qt Project
parent baa3d329ac
commit 503d761c08
2 changed files with 15 additions and 1 deletions

View File

@ -224,7 +224,11 @@ void QLoggingSettingsParser::setContent(QTextStream &stream)
const QStringRef value = line.midRef(equalPos + 1);
bool enabled = (value.compare(QLatin1String("true"),
Qt::CaseInsensitive) == 0);
_rules.append(QLoggingRule(pattern, enabled));
QLoggingRule rule(pattern, enabled);
if (rule.flags != QLoggingRule::Invalid)
_rules.append(rule);
else
warnMsg("Ignoring malformed logging rule: '%s'", line.toUtf8().constData());
}
}
}

View File

@ -302,6 +302,16 @@ private slots:
QVERIFY(!cat.isWarningEnabled());
}
void QLoggingRegistry_checkErrors()
{
QLoggingSettingsParser parser;
QString warnMsg = QString("Ignoring malformed logging rule: '***=false'");
QTest::ignoreMessage(QtWarningMsg, warnMsg.toLocal8Bit().constData());
parser.setContent("[Rules]\n"
"***=false\n");
QVERIFY(parser.rules().isEmpty());
}
};
QTEST_MAIN(tst_QLoggingRegistry)