forked from qt-creator/qt-creator
UnixPtyProcess: Get rid of foreach
Change-Id: I9ca9092c874960e63d6a29bcd11181bb571c3615 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
This commit is contained in:
33
src/libs/3rdparty/libptyqt/unixptyprocess.cpp
vendored
33
src/libs/3rdparty/libptyqt/unixptyprocess.cpp
vendored
@@ -184,34 +184,33 @@ bool UnixPtyProcess::startProcess(const QString &shellPath,
|
|||||||
m_readMasterNotify->disconnect();
|
m_readMasterNotify->disconnect();
|
||||||
});
|
});
|
||||||
|
|
||||||
QStringList defaultVars;
|
const QStringList defaultVars = {
|
||||||
|
"TERM=xterm-256color",
|
||||||
defaultVars.append("TERM=xterm-256color");
|
"ITERM_PROFILE=Default",
|
||||||
defaultVars.append("ITERM_PROFILE=Default");
|
"XPC_FLAGS=0x0",
|
||||||
defaultVars.append("XPC_FLAGS=0x0");
|
"XPC_SERVICE_NAME=0",
|
||||||
defaultVars.append("XPC_SERVICE_NAME=0");
|
"LANG=en_US.UTF-8",
|
||||||
defaultVars.append("LANG=en_US.UTF-8");
|
"LC_ALL=en_US.UTF-8",
|
||||||
defaultVars.append("LC_ALL=en_US.UTF-8");
|
"LC_CTYPE=UTF-8",
|
||||||
defaultVars.append("LC_CTYPE=UTF-8");
|
"INIT_CWD=" + QCoreApplication::applicationDirPath(),
|
||||||
defaultVars.append("INIT_CWD=" + QCoreApplication::applicationDirPath());
|
"COMMAND_MODE=unix2003",
|
||||||
defaultVars.append("COMMAND_MODE=unix2003");
|
"COLORTERM=truecolor"
|
||||||
defaultVars.append("COLORTERM=truecolor");
|
};
|
||||||
|
|
||||||
QStringList varNames;
|
QStringList varNames;
|
||||||
foreach (QString line, environment) {
|
for (const QString &line : std::as_const(environment))
|
||||||
varNames.append(line.split("=").first());
|
varNames.append(line.split("=").first());
|
||||||
}
|
|
||||||
|
|
||||||
//append default env vars only if they don't exists in current env
|
//append default env vars only if they don't exists in current env
|
||||||
foreach (QString defVar, defaultVars) {
|
for (const QString &defVar : defaultVars) {
|
||||||
if (!varNames.contains(defVar.split("=").first()))
|
if (!varNames.contains(defVar.split("=").first()))
|
||||||
environment.append(defVar);
|
environment.append(defVar);
|
||||||
}
|
}
|
||||||
|
|
||||||
QProcessEnvironment envFormat;
|
QProcessEnvironment envFormat;
|
||||||
foreach (QString line, environment) {
|
for (const QString &line : std::as_const(environment))
|
||||||
envFormat.insert(line.split("=").first(), line.split("=").last());
|
envFormat.insert(line.split("=").first(), line.split("=").last());
|
||||||
}
|
|
||||||
m_shellProcess.setWorkingDirectory(workingDir);
|
m_shellProcess.setWorkingDirectory(workingDir);
|
||||||
m_shellProcess.setProcessEnvironment(envFormat);
|
m_shellProcess.setProcessEnvironment(envFormat);
|
||||||
m_shellProcess.setReadChannel(QProcess::StandardOutput);
|
m_shellProcess.setReadChannel(QProcess::StandardOutput);
|
||||||
|
|||||||
Reference in New Issue
Block a user