diff options
Diffstat (limited to 'src/core/kconfig.cpp')
-rw-r--r-- | src/core/kconfig.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/core/kconfig.cpp b/src/core/kconfig.cpp index 07fa6f55..9f17e579 100644 --- a/src/core/kconfig.cpp +++ b/src/core/kconfig.cpp @@ -221,6 +221,14 @@ QString KConfigPrivate::expandString(const QString &value) QByteArray pEnv = qgetenv(aVarName.toLatin1().constData()); if (!pEnv.isEmpty()) { env = QString::fromLocal8Bit(pEnv.constData()); + } else { + if (aVarName == QStringLiteral("QT_DATA_HOME")) { + env = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation); + } else if (aVarName == QStringLiteral("QT_CONFIG_HOME")) { + env = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation); + } else if (aVarName == QStringLiteral("QT_CACHE_HOME")) { + env = QStandardPaths::writableLocation(QStandardPaths::GenericCacheLocation); + } } } aValue.replace(nDollarPos, nEndPos - nDollarPos, env); |