diff --git a/src/corelib/global/qlogging.cpp b/src/corelib/global/qlogging.cpp index 63dd4c1387..8174d125a3 100644 --- a/src/corelib/global/qlogging.cpp +++ b/src/corelib/global/qlogging.cpp @@ -762,7 +762,7 @@ static const char functionTokenC[] = "%{function}"; static const char pidTokenC[] = "%{pid}"; static const char appnameTokenC[] = "%{appname}"; static const char threadidTokenC[] = "%{threadid}"; -static const char timeTokenC[] = "%{time}"; +static const char timeTokenC[] = "%{time"; //not a typo: this command has arguments static const char ifCategoryTokenC[] = "%{if-category}"; static const char ifDebugTokenC[] = "%{if-debug}"; static const char ifWarningTokenC[] = "%{if-warning}"; diff --git a/tests/auto/corelib/global/qlogging/tst_qlogging.cpp b/tests/auto/corelib/global/qlogging/tst_qlogging.cpp index 462d56908a..3c1a26c629 100644 --- a/tests/auto/corelib/global/qlogging/tst_qlogging.cpp +++ b/tests/auto/corelib/global/qlogging/tst_qlogging.cpp @@ -688,6 +688,19 @@ void tst_qmessagehandler::qMessagePattern_data() << "QT_MESSAGE_PATTERN: %{if-*} cannot be nested" << "A DEBUG qDebug " << "A qWarning "); + + // This test won't work when midnight is too close... wait a bit + while (QTime::currentTime() > QTime(23, 59, 30)) + QTest::qWait(10000); + QTest::newRow("time") << "/%{time yyyy - MM - d}/%{message}" + << true << (QList() + << ('/' + QDateTime::currentDateTime().toString("yyyy - MM - d").toUtf8() + "/qDebug")); + + // %{time} should have a padding of 6 so if it takes less than 10 seconds to show + // the first message, there should be 5 spaces + QTest::newRow("time") << "<%{time}>%{message}" << true << (QList() + << "< "); + }