diff --git a/src/libs/utils/synchronousprocess.cpp b/src/libs/utils/synchronousprocess.cpp index fab9f93a030..f15eb449387 100644 --- a/src/libs/utils/synchronousprocess.cpp +++ b/src/libs/utils/synchronousprocess.cpp @@ -410,16 +410,6 @@ void SynchronousProcess::setEnvironment(const Environment &e) d->m_process.setEnvironment(Environment(e)); } -void SynchronousProcess::setProcessEnvironment(const QProcessEnvironment &environment) -{ - d->m_process.setProcessEnvironment(environment); -} - -QProcessEnvironment SynchronousProcess::processEnvironment() const -{ - return d->m_process.processEnvironment(); -} - unsigned SynchronousProcess::flags() const { return d->m_process.flags(); diff --git a/src/libs/utils/synchronousprocess.h b/src/libs/utils/synchronousprocess.h index 546ab1b0413..967e6d4456b 100644 --- a/src/libs/utils/synchronousprocess.h +++ b/src/libs/utils/synchronousprocess.h @@ -116,9 +116,6 @@ public: Environment environment() const; void setEnvironment(const Environment &); - void setProcessEnvironment(const QProcessEnvironment &environment); - QProcessEnvironment processEnvironment() const; - void setWorkingDirectory(const QString &workingDirectory); QString workingDirectory() const; diff --git a/src/plugins/cmakeprojectmanager/cmakeprojectimporter.cpp b/src/plugins/cmakeprojectmanager/cmakeprojectimporter.cpp index d83169402c6..3dd759e8192 100644 --- a/src/plugins/cmakeprojectmanager/cmakeprojectimporter.cpp +++ b/src/plugins/cmakeprojectmanager/cmakeprojectimporter.cpp @@ -203,7 +203,7 @@ static FilePath qmakeFromCMakeCache(const CMakeConfig &config) cmake.setFlags(SynchronousProcess::UnixTerminalDisabled); Environment env = Environment::systemEnvironment(); Environment::setupEnglishOutput(&env); - cmake.setProcessEnvironment(env.toProcessEnvironment()); + cmake.setEnvironment(env); cmake.setTimeOutMessageBoxEnabled(false); QString cmakeGenerator diff --git a/src/plugins/cmakeprojectmanager/cmaketool.cpp b/src/plugins/cmakeprojectmanager/cmaketool.cpp index 678acdf554f..e6cb1f434c1 100644 --- a/src/plugins/cmakeprojectmanager/cmaketool.cpp +++ b/src/plugins/cmakeprojectmanager/cmaketool.cpp @@ -196,7 +196,7 @@ Utils::SynchronousProcessResponse CMakeTool::run(const QStringList &args, int ti cmake.setFlags(Utils::SynchronousProcess::UnixTerminalDisabled); Utils::Environment env = Utils::Environment::systemEnvironment(); Utils::Environment::setupEnglishOutput(&env); - cmake.setProcessEnvironment(env.toProcessEnvironment()); + cmake.setEnvironment(env); cmake.setTimeOutMessageBoxEnabled(false); return cmake.runBlocking({cmakeExecutable(), args}); diff --git a/src/plugins/perforce/perforceplugin.cpp b/src/plugins/perforce/perforceplugin.cpp index c5d89ce0056..b133487ec94 100644 --- a/src/plugins/perforce/perforceplugin.cpp +++ b/src/plugins/perforce/perforceplugin.cpp @@ -106,10 +106,10 @@ static inline QStringList perforceRelativeProjectDirectory(const VcsBasePluginSt } // Clean user setting off diff-binary for 'p4 resolve' and 'p4 diff'. -static inline QProcessEnvironment overrideDiffEnvironmentVariable() +static Environment overrideDiffEnvironmentVariable() { - QProcessEnvironment rc = QProcessEnvironment::systemEnvironment(); - rc.remove(QLatin1String("P4DIFF")); + Environment rc = Environment::systemEnvironment(); + rc.unset("P4DIFF"); return rc; } @@ -1255,7 +1255,7 @@ PerforceResponse PerforcePluginPrivate::synchronousProcess(const QString &workin if (outputCodec) process.setCodec(outputCodec); if (flags & OverrideDiffEnvironment) - process.setProcessEnvironment(overrideDiffEnvironmentVariable()); + process.setEnvironment(overrideDiffEnvironmentVariable()); if (!workingDir.isEmpty()) process.setWorkingDirectory(workingDir); @@ -1317,15 +1317,16 @@ PerforceResponse PerforcePluginPrivate::fullySynchronousProcess(const QString &w const QByteArray &stdInput, QTextCodec *outputCodec) const { - QProcess process; + QtcProcess process; if (flags & OverrideDiffEnvironment) - process.setProcessEnvironment(overrideDiffEnvironmentVariable()); + process.setEnvironment(overrideDiffEnvironmentVariable()); if (!workingDir.isEmpty()) process.setWorkingDirectory(workingDir); PerforceResponse response; - process.start(m_settings.p4BinaryPath.value(), args); + process.setCommand({m_settings.p4BinaryPath.value(), args}); + process.start(); if (stdInput.isEmpty()) process.closeWriteChannel(); @@ -1336,7 +1337,7 @@ PerforceResponse PerforcePluginPrivate::fullySynchronousProcess(const QString &w } if (!stdInput.isEmpty()) { if (process.write(stdInput) == -1) { - SynchronousProcess::stopProcess(process); + process.stopProcess(); response.error = true; response.message = tr("Unable to write input data to process %1: %2"). arg(QDir::toNativeSeparators(m_settings.p4BinaryPath.value()),