summaryrefslogtreecommitdiff
path: root/src/libs/utils/consoleprocess_unix.cpp
diff options
context:
space:
mode:
authorTobias Hunger <tobias.hunger@qt.io>2018-08-31 10:54:47 +0200
committerTobias Hunger <tobias.hunger@qt.io>2018-09-05 11:46:51 +0000
commit626665b7a4d5a4692b8dbd227bf4a3d5f5958fac (patch)
tree3708e4f5917e5f42d70f36159b8dff73f348d0cd /src/libs/utils/consoleprocess_unix.cpp
parenta1ba378d8cbc900a3586026cca7d7b1817975069 (diff)
downloadqt-creator-626665b7a4d5a4692b8dbd227bf4a3d5f5958fac.tar.gz
Allow to set environment for "Open Terminal"
Change-Id: If6e82ef8a7bbbaa947b41e0f6746d2b2aa770c20 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Diffstat (limited to 'src/libs/utils/consoleprocess_unix.cpp')
-rw-r--r--src/libs/utils/consoleprocess_unix.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/libs/utils/consoleprocess_unix.cpp b/src/libs/utils/consoleprocess_unix.cpp
index 82afaf85a6..fd426a5f0c 100644
--- a/src/libs/utils/consoleprocess_unix.cpp
+++ b/src/libs/utils/consoleprocess_unix.cpp
@@ -431,10 +431,18 @@ void ConsoleProcess::setTerminalEmulator(QSettings *settings, const TerminalComm
}
}
-bool ConsoleProcess::startTerminalEmulator(QSettings *settings, const QString &workingDir)
+bool ConsoleProcess::startTerminalEmulator(QSettings *settings, const QString &workingDir,
+ const Utils::Environment &env)
{
const TerminalCommand term = terminalEmulator(settings);
- return QProcess::startDetached(term.command, QtcProcess::splitArgs(term.openArgs), workingDir);
+
+ QProcess process;
+ process.setProgram(term.command);
+ process.setArguments(QtcProcess::splitArgs(term.openArgs));
+ process.setProcessEnvironment(env.toProcessEnvironment());
+ process.setWorkingDirectory(workingDir);
+
+ return process.startDetached();
}
} // namespace Utils