summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/libs/utils/qtcprocess.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/libs/utils/qtcprocess.cpp b/src/libs/utils/qtcprocess.cpp
index 7dc8999520..b49a330b03 100644
--- a/src/libs/utils/qtcprocess.cpp
+++ b/src/libs/utils/qtcprocess.cpp
@@ -441,6 +441,13 @@ QtcProcess::Result QtcProcessPrivate::interpretExitCode(int exitCode)
\sa Utils::ProcessArgs
*/
+static QtcProcess::ProcessImpl defaultProcessImpl()
+{
+ if (qEnvironmentVariableIsSet("QTC_USE_QPROCESS"))
+ return QtcProcess::QProcessImpl;
+ return QtcProcess::ProcessLauncherImpl;
+}
+
QtcProcess::QtcProcess(ProcessImpl processImpl, ProcessMode processMode, QObject *parent)
: QObject(parent), d(new QtcProcessPrivate(this, processImpl, processMode))
{
@@ -451,10 +458,10 @@ QtcProcess::QtcProcess(ProcessImpl processImpl, ProcessMode processMode, QObject
}
QtcProcess::QtcProcess(ProcessMode processMode, QObject *parent)
- : QtcProcess(QtcProcess::QProcessImpl, processMode, parent) {}
+ : QtcProcess(defaultProcessImpl(), processMode, parent) {}
QtcProcess::QtcProcess(QObject *parent)
- : QtcProcess(QtcProcess::QProcessImpl, ProcessMode::Reader, parent) {}
+ : QtcProcess(defaultProcessImpl(), ProcessMode::Reader, parent) {}
QtcProcess::~QtcProcess()
{