diff options
Diffstat (limited to 'src/corelib/io/qloggingregistry.cpp')
-rw-r--r-- | src/corelib/io/qloggingregistry.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/corelib/io/qloggingregistry.cpp b/src/corelib/io/qloggingregistry.cpp index 6e195d29cb..23f1ffbd16 100644 --- a/src/corelib/io/qloggingregistry.cpp +++ b/src/corelib/io/qloggingregistry.cpp @@ -248,7 +248,7 @@ static bool qtLoggingDebug() /*! \internal Initializes the rules database by loading - .config/QtProject/qtlogging.ini and $QT_LOGGING_CONF. + $QT_LOGGING_CONF, $QT_LOGGING_RULES, and .config/QtProject/qtlogging.ini. */ void QLoggingRegistry::init() { @@ -266,6 +266,14 @@ void QLoggingRegistry::init() envRules = parser.rules(); } } + const QByteArray rulesSrc = qgetenv("QT_LOGGING_RULES"); + if (!rulesSrc.isEmpty()) { + QTextStream stream(rulesSrc); + QLoggingSettingsParser parser; + parser.setSection(QStringLiteral("Rules")); + parser.setContent(stream); + envRules += parser.rules(); + } // get rules from qt configuration QString envPath = QStandardPaths::locate(QStandardPaths::GenericConfigLocation, |