diff --git a/src/libs/utils/environment.cpp b/src/libs/utils/environment.cpp index 03eb5c72a77..220efbef157 100644 --- a/src/libs/utils/environment.cpp +++ b/src/libs/utils/environment.cpp @@ -383,6 +383,11 @@ bool Environment::hasKey(const QString &key) return m_values.contains(key); } +QString Environment::userName() const +{ + return value(QLatin1String(HostOsInfo::isWindowsHost() ? "USERNAME" : "USER")); +} + bool Environment::operator!=(const Environment &other) const { return !(*this == other); diff --git a/src/libs/utils/environment.h b/src/libs/utils/environment.h index ff491c264b1..423e4be404c 100644 --- a/src/libs/utils/environment.h +++ b/src/libs/utils/environment.h @@ -79,6 +79,8 @@ public: QList diff(const Environment &other) const; bool hasKey(const QString &key); + QString userName() const; + void appendOrSet(const QString &key, const QString &value, const QString &sep = QString()); void prependOrSet(const QString &key, const QString &value, const QString &sep = QString()); diff --git a/src/plugins/cpaster/settings.cpp b/src/plugins/cpaster/settings.cpp index d943147a8c7..aeacddf1c9c 100644 --- a/src/plugins/cpaster/settings.cpp +++ b/src/plugins/cpaster/settings.cpp @@ -31,7 +31,7 @@ #include "settings.h" #include "pastebindotcomprotocol.h" -#include +#include #include #include @@ -67,8 +67,7 @@ void Settings::toSettings(QSettings *settings) const void Settings::fromSettings(const QSettings *settings) { const QString rootKey = QLatin1String(groupC) + QLatin1Char('/'); - const char * const envKey = Utils::HostOsInfo::isWindowsHost() ? "USERNAME" : "USER"; - const QString defaultUser = QString::fromLocal8Bit(qgetenv(envKey)); + const QString defaultUser = Utils::Environment::systemEnvironment().userName(); username = settings->value(rootKey + QLatin1String(userNameKeyC), defaultUser).toString(); protocol = settings->value(rootKey + QLatin1String(defaultProtocolKeyC), PasteBinDotComProtocol::protocolName()).toString(); copyToClipboard = settings->value(rootKey + QLatin1String(copyToClipboardKeyC), true).toBool(); diff --git a/src/plugins/cpptools/cppfilesettingspage.cpp b/src/plugins/cpptools/cppfilesettingspage.cpp index 2f11b68387d..8113955154b 100644 --- a/src/plugins/cpptools/cppfilesettingspage.cpp +++ b/src/plugins/cpptools/cppfilesettingspage.cpp @@ -39,7 +39,7 @@ #include -#include +#include #include #include @@ -151,8 +151,7 @@ static bool keyWordReplacement(const QString &keyWord, return true; } if (keyWord == QLatin1String("%USER%")) { - const char * const envKey = Utils::HostOsInfo::isWindowsHost() ? "USERNAME" : "USER"; - *value = QString::fromLocal8Bit(qgetenv(envKey)); + *value = Utils::Environment::systemEnvironment().userName(); return true; } // Environment variables (for example '%$EMAIL%').