summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/libs/utils/archive.cpp2
-rw-r--r--src/libs/utils/qtcprocess.cpp10
-rw-r--r--src/libs/utils/qtcprocess.h2
-rw-r--r--src/plugins/android/androidsettingswidget.cpp6
-rw-r--r--src/plugins/cmakeprojectmanager/cmakeprocess.cpp5
-rw-r--r--src/plugins/cmakeprojectmanager/cmakeprocess.h3
-rw-r--r--src/plugins/coreplugin/externaltool.cpp4
-rw-r--r--src/plugins/coreplugin/externaltool.h2
-rw-r--r--src/plugins/coreplugin/locator/executefilter.cpp4
-rw-r--r--src/plugins/coreplugin/locator/executefilter.h2
-rw-r--r--src/plugins/cppcheck/cppcheckrunner.cpp2
-rw-r--r--src/plugins/cppcheck/cppcheckrunner.h2
-rw-r--r--src/plugins/debugger/gdb/gdbengine.cpp4
-rw-r--r--src/plugins/debugger/gdb/gdbengine.h2
-rw-r--r--src/plugins/debugger/lldb/lldbengine.cpp4
-rw-r--r--src/plugins/debugger/lldb/lldbengine.h2
-rw-r--r--src/plugins/git/gerrit/gerritmodel.cpp10
-rw-r--r--src/plugins/git/gerrit/gerritplugin.cpp10
-rw-r--r--src/plugins/languageclient/languageclientinterface.cpp7
-rw-r--r--src/plugins/languageclient/languageclientinterface.h2
-rw-r--r--src/plugins/mesonprojectmanager/project/mesonprocess.cpp4
-rw-r--r--src/plugins/perforce/perforcechecker.cpp8
-rw-r--r--src/plugins/perforce/perforcechecker.h2
-rw-r--r--src/plugins/projectexplorer/abstractprocessstep.cpp2
-rw-r--r--src/plugins/projectexplorer/abstractprocessstep.h2
-rw-r--r--src/plugins/projectexplorer/applicationlauncher.cpp10
-rw-r--r--src/plugins/python/pythonutils.cpp7
-rw-r--r--src/plugins/winrt/winrtdevice.cpp4
-rw-r--r--src/plugins/winrt/winrtdevice.h2
-rw-r--r--src/plugins/winrt/winrtrunnerhelper.cpp4
-rw-r--r--src/plugins/winrt/winrtrunnerhelper.h4
31 files changed, 72 insertions, 62 deletions
diff --git a/src/libs/utils/archive.cpp b/src/libs/utils/archive.cpp
index 37a2cadfdf..2a8795f4dc 100644
--- a/src/libs/utils/archive.cpp
+++ b/src/libs/utils/archive.cpp
@@ -224,7 +224,7 @@ Archive *Archive::unarchive(const FilePath &src, const FilePath &dest)
archive->m_process,
&QtcProcess::finished,
archive,
- [archive](int, QProcess::ExitStatus) {
+ [archive] {
if (!archive->m_process)
return;
archive->finished(archive->m_process->result() == QtcProcess::FinishedWithSuccess);
diff --git a/src/libs/utils/qtcprocess.cpp b/src/libs/utils/qtcprocess.cpp
index b957583af4..f051f16303 100644
--- a/src/libs/utils/qtcprocess.cpp
+++ b/src/libs/utils/qtcprocess.cpp
@@ -192,6 +192,7 @@ public:
QTimer m_timer;
QEventLoop m_eventLoop;
QtcProcess::Result m_result = QtcProcess::StartFailed;
+ QProcess::ExitStatus m_exitStatus = QProcess::NormalExit;
int m_exitCode = -1;
FilePath m_binary;
ChannelBuffer m_stdOut;
@@ -1079,13 +1080,14 @@ void QtcProcessPrivate::slotTimeout()
}
}
-void QtcProcessPrivate::slotFinished(int exitCode, QProcess::ExitStatus e)
+void QtcProcessPrivate::slotFinished(int exitCode, QProcess::ExitStatus status)
{
if (debug)
- qDebug() << Q_FUNC_INFO << exitCode << e;
+ qDebug() << Q_FUNC_INFO << exitCode << status;
m_hangTimerCount = 0;
+ m_exitStatus = status;
- switch (e) {
+ switch (status) {
case QProcess::NormalExit:
m_result = interpretExitCode(exitCode);
m_exitCode = exitCode;
@@ -1098,7 +1100,7 @@ void QtcProcessPrivate::slotFinished(int exitCode, QProcess::ExitStatus e)
break;
}
m_eventLoop.quit();
- emit q->finished(m_exitCode, e);
+ emit q->finished();
}
void QtcProcessPrivate::slotError(QProcess::ProcessError e)
diff --git a/src/libs/utils/qtcprocess.h b/src/libs/utils/qtcprocess.h
index bbfd8bc45b..d0ed8a1741 100644
--- a/src/libs/utils/qtcprocess.h
+++ b/src/libs/utils/qtcprocess.h
@@ -173,7 +173,7 @@ public:
signals:
void started();
- void finished(int exitCode, QProcess::ExitStatus exitStatus);
+ void finished();
void errorOccurred(QProcess::ProcessError error);
void stateChanged(QProcess::ProcessState state);
diff --git a/src/plugins/android/androidsettingswidget.cpp b/src/plugins/android/androidsettingswidget.cpp
index 3ad388ac26..6c5d7ed514 100644
--- a/src/plugins/android/androidsettingswidget.cpp
+++ b/src/plugins/android/androidsettingswidget.cpp
@@ -730,15 +730,13 @@ void AndroidSettingsWidget::downloadOpenSslRepo(const bool silent)
openButton->deleteLater();
};
- connect(gitCloner, &QtcProcess::finished,
- m_ui.openSslPathChooser,
- [=](int exitCode, QProcess::ExitStatus exitStatus) {
+ connect(gitCloner, &QtcProcess::finished, [=] {
openSslProgressDialog->close();
validateOpenSsl();
m_ui.openSslPathChooser->triggerChanged(); // After cloning, the path exists
if (!openSslProgressDialog->wasCanceled()
- || (exitStatus == QProcess::NormalExit && exitCode != 0)) {
+ || gitCloner->result() == QtcProcess::FinishedWithError) {
failDialog();
}
});
diff --git a/src/plugins/cmakeprojectmanager/cmakeprocess.cpp b/src/plugins/cmakeprojectmanager/cmakeprocess.cpp
index 843b4d3d68..6ad5d37893 100644
--- a/src/plugins/cmakeprojectmanager/cmakeprocess.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakeprocess.cpp
@@ -183,7 +183,7 @@ void CMakeProcess::processStandardError()
});
}
-void CMakeProcess::handleProcessFinished(int code, QProcess::ExitStatus status)
+void CMakeProcess::handleProcessFinished()
{
QTC_ASSERT(m_process && m_future, return);
@@ -192,8 +192,9 @@ void CMakeProcess::handleProcessFinished(int code, QProcess::ExitStatus status)
processStandardOutput();
processStandardError();
+ const int code = m_process->exitCode();
QString msg;
- if (status != QProcess::NormalExit) {
+ if (m_process->exitStatus() != QProcess::NormalExit) {
if (m_processWasCanceled) {
msg = tr("CMake process was canceled by the user.");
} else {
diff --git a/src/plugins/cmakeprojectmanager/cmakeprocess.h b/src/plugins/cmakeprojectmanager/cmakeprocess.h
index f6741474ea..d08d3f831e 100644
--- a/src/plugins/cmakeprojectmanager/cmakeprocess.h
+++ b/src/plugins/cmakeprojectmanager/cmakeprocess.h
@@ -64,12 +64,13 @@ public:
void processStandardError();
int lastExitCode() const { return m_lastExitCode; }
+
signals:
void started();
void finished();
private:
- void handleProcessFinished(int code, QProcess::ExitStatus status);
+ void handleProcessFinished();
void checkForCancelled();
std::unique_ptr<Utils::QtcProcess> m_process;
diff --git a/src/plugins/coreplugin/externaltool.cpp b/src/plugins/coreplugin/externaltool.cpp
index 19c51e0283..fb8a532cb4 100644
--- a/src/plugins/coreplugin/externaltool.cpp
+++ b/src/plugins/coreplugin/externaltool.cpp
@@ -679,9 +679,9 @@ void ExternalToolRunner::started()
m_process->closeWriteChannel();
}
-void ExternalToolRunner::finished(int exitCode, QProcess::ExitStatus status)
+void ExternalToolRunner::finished()
{
- if (status == QProcess::NormalExit && exitCode == 0
+ if (m_process->result() == QtcProcess::FinishedWithSuccess
&& (m_tool->outputHandling() == ExternalTool::ReplaceSelection
|| m_tool->errorHandling() == ExternalTool::ReplaceSelection)) {
ExternalToolManager::emitReplaceSelectionRequested(m_processOutput);
diff --git a/src/plugins/coreplugin/externaltool.h b/src/plugins/coreplugin/externaltool.h
index 5e179885e4..edbc2afca5 100644
--- a/src/plugins/coreplugin/externaltool.h
+++ b/src/plugins/coreplugin/externaltool.h
@@ -135,7 +135,7 @@ public:
private:
void started();
- void finished(int exitCode, QProcess::ExitStatus status);
+ void finished();
void error(QProcess::ProcessError error);
void readStandardOutput();
void readStandardError();
diff --git a/src/plugins/coreplugin/locator/executefilter.cpp b/src/plugins/coreplugin/locator/executefilter.cpp
index a7ed2d1dc5..48f2c64618 100644
--- a/src/plugins/coreplugin/locator/executefilter.cpp
+++ b/src/plugins/coreplugin/locator/executefilter.cpp
@@ -130,11 +130,11 @@ void ExecuteFilter::accept(LocatorFilterEntry selection,
p->runHeadCommand();
}
-void ExecuteFilter::finished(int exitCode, QProcess::ExitStatus status)
+void ExecuteFilter::finished()
{
const QString commandName = headCommand();
QString message;
- if (status == QProcess::NormalExit && exitCode == 0)
+ if (m_process->result() == QtcProcess::FinishedWithSuccess)
message = tr("Command \"%1\" finished.").arg(commandName);
else
message = tr("Command \"%1\" failed.").arg(commandName);
diff --git a/src/plugins/coreplugin/locator/executefilter.h b/src/plugins/coreplugin/locator/executefilter.h
index 6415832945..9e3f551d63 100644
--- a/src/plugins/coreplugin/locator/executefilter.h
+++ b/src/plugins/coreplugin/locator/executefilter.h
@@ -55,7 +55,7 @@ public:
QString *newText, int *selectionStart, int *selectionLength) const override;
private:
- void finished(int exitCode, QProcess::ExitStatus status);
+ void finished();
void readStandardOutput();
void readStandardError();
void runHeadCommand();
diff --git a/src/plugins/cppcheck/cppcheckrunner.cpp b/src/plugins/cppcheck/cppcheckrunner.cpp
index 7b8205aed1..2f6cffb1eb 100644
--- a/src/plugins/cppcheck/cppcheckrunner.cpp
+++ b/src/plugins/cppcheck/cppcheckrunner.cpp
@@ -170,7 +170,7 @@ void CppcheckRunner::handleStarted()
m_tool.startParsing();
}
-void CppcheckRunner::handleFinished(int)
+void CppcheckRunner::handleFinished()
{
if (m_process->error() != QProcess::FailedToStart) {
m_tool.finishParsing();
diff --git a/src/plugins/cppcheck/cppcheckrunner.h b/src/plugins/cppcheck/cppcheckrunner.h
index ecfb83ba70..0fd031bbce 100644
--- a/src/plugins/cppcheck/cppcheckrunner.h
+++ b/src/plugins/cppcheck/cppcheckrunner.h
@@ -61,7 +61,7 @@ private:
void readOutput();
void readError();
void handleStarted();
- void handleFinished(int);
+ void handleFinished();
CppcheckTool &m_tool;
Utils::QtcProcess *m_process = nullptr;
diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp
index d7e2231221..83d9137996 100644
--- a/src/plugins/debugger/gdb/gdbengine.cpp
+++ b/src/plugins/debugger/gdb/gdbengine.cpp
@@ -4085,12 +4085,12 @@ void GdbEngine::handleGdbError(QProcess::ProcessError error)
}
}
-void GdbEngine::handleGdbFinished(int exitCode, QProcess::ExitStatus exitStatus)
+void GdbEngine::handleGdbFinished()
{
if (m_commandTimer.isActive())
m_commandTimer.stop();
- notifyDebuggerProcessFinished(exitCode, exitStatus, "GDB");
+ notifyDebuggerProcessFinished(m_gdbProc.exitCode(), m_gdbProc.exitStatus(), "GDB");
}
void GdbEngine::abortDebuggerProcess()
diff --git a/src/plugins/debugger/gdb/gdbengine.h b/src/plugins/debugger/gdb/gdbengine.h
index ca92bef8c6..9d884cb5c3 100644
--- a/src/plugins/debugger/gdb/gdbengine.h
+++ b/src/plugins/debugger/gdb/gdbengine.h
@@ -111,7 +111,7 @@ private: ////////// General Interface //////////
// The engine is still running just fine, but it failed to acquire a debuggee.
void notifyInferiorSetupFailedHelper(const QString &msg);
- void handleGdbFinished(int exitCode, QProcess::ExitStatus exitStatus);
+ void handleGdbFinished();
void handleGdbError(QProcess::ProcessError error);
void readGdbStandardOutput();
void readGdbStandardError();
diff --git a/src/plugins/debugger/lldb/lldbengine.cpp b/src/plugins/debugger/lldb/lldbengine.cpp
index 959bacecc0..421f6f2c26 100644
--- a/src/plugins/debugger/lldb/lldbengine.cpp
+++ b/src/plugins/debugger/lldb/lldbengine.cpp
@@ -820,9 +820,9 @@ QString LldbEngine::errorMessage(QProcess::ProcessError error) const
}
}
-void LldbEngine::handleLldbFinished(int exitCode, QProcess::ExitStatus exitStatus)
+void LldbEngine::handleLldbFinished()
{
- notifyDebuggerProcessFinished(exitCode, exitStatus, "LLDB");
+ notifyDebuggerProcessFinished(m_lldbProc.exitCode(), m_lldbProc.exitStatus(), "LLDB");
}
void LldbEngine::readLldbStandardError()
diff --git a/src/plugins/debugger/lldb/lldbengine.h b/src/plugins/debugger/lldb/lldbengine.h
index fa2becb742..70ddf2aad0 100644
--- a/src/plugins/debugger/lldb/lldbengine.h
+++ b/src/plugins/debugger/lldb/lldbengine.h
@@ -112,7 +112,7 @@ private:
QString errorMessage(QProcess::ProcessError error) const;
bool hasCapability(unsigned cap) const override;
- void handleLldbFinished(int exitCode, QProcess::ExitStatus exitStatus);
+ void handleLldbFinished();
void handleLldbError(QProcess::ProcessError error);
void readLldbStandardOutput();
void readLldbStandardError();
diff --git a/src/plugins/git/gerrit/gerritmodel.cpp b/src/plugins/git/gerrit/gerritmodel.cpp
index d954c31e21..7290addf99 100644
--- a/src/plugins/git/gerrit/gerritmodel.cpp
+++ b/src/plugins/git/gerrit/gerritmodel.cpp
@@ -246,7 +246,7 @@ signals:
private:
void processError(QProcess::ProcessError);
- void processFinished(int exitCode, QProcess::ExitStatus);
+ void processFinished();
void timeout();
void errorTermination(const QString &msg);
@@ -351,16 +351,16 @@ void QueryContext::processError(QProcess::ProcessError e)
VcsOutputWindow::appendError(msg);
}
-void QueryContext::processFinished(int exitCode, QProcess::ExitStatus es)
+void QueryContext::processFinished()
{
if (m_timer.isActive())
m_timer.stop();
emit errorText(m_error);
- if (es != QProcess::NormalExit) {
+ if (m_process.exitStatus() != QProcess::NormalExit) {
errorTermination(tr("%1 crashed.").arg(m_binary));
return;
- } else if (exitCode) {
- errorTermination(tr("%1 returned %2.").arg(m_binary).arg(exitCode));
+ } else if (m_process.exitCode()) {
+ errorTermination(tr("%1 returned %2.").arg(m_binary).arg(m_process.exitCode()));
return;
}
emit resultRetrieved(m_output);
diff --git a/src/plugins/git/gerrit/gerritplugin.cpp b/src/plugins/git/gerrit/gerritplugin.cpp
index 81da702594..0d3401c6d1 100644
--- a/src/plugins/git/gerrit/gerritplugin.cpp
+++ b/src/plugins/git/gerrit/gerritplugin.cpp
@@ -107,7 +107,7 @@ private:
};
void processError(QProcess::ProcessError);
- void processFinished(int exitCode, QProcess::ExitStatus);
+ void processFinished();
void processReadyReadStandardError();
void processReadyReadStandardOutput();
@@ -176,14 +176,14 @@ void FetchContext::start()
m_process.closeWriteChannel();
}
-void FetchContext::processFinished(int exitCode, QProcess::ExitStatus es)
+void FetchContext::processFinished()
{
- if (es != QProcess::NormalExit) {
+ if (m_process.exitStatus() != QProcess::NormalExit) {
handleError(tr("%1 crashed.").arg(m_git.toUserOutput()));
return;
}
- if (exitCode) {
- handleError(tr("%1 returned %2.").arg(m_git.toUserOutput()).arg(exitCode));
+ if (m_process.exitCode()) {
+ handleError(tr("%1 returned %2.").arg(m_git.toUserOutput()).arg(m_process.exitCode()));
return;
}
if (m_state == FetchState) {
diff --git a/src/plugins/languageclient/languageclientinterface.cpp b/src/plugins/languageclient/languageclientinterface.cpp
index a12472526e..99a9c0d41b 100644
--- a/src/plugins/languageclient/languageclientinterface.cpp
+++ b/src/plugins/languageclient/languageclientinterface.cpp
@@ -134,10 +134,11 @@ void StdIOClientInterface::sendData(const QByteArray &data)
m_process.write(data);
}
-void StdIOClientInterface::onProcessFinished(int exitCode, QProcess::ExitStatus exitStatus)
+void StdIOClientInterface::onProcessFinished()
{
- if (exitStatus == QProcess::CrashExit)
- emit error(tr("Crashed with exit code %1: %2").arg(exitCode).arg(m_process.errorString()));
+ if (m_process.exitStatus() == QProcess::CrashExit)
+ emit error(tr("Crashed with exit code %1: %2")
+ .arg(m_process.exitCode()).arg(m_process.errorString()));
emit finished();
}
diff --git a/src/plugins/languageclient/languageclientinterface.h b/src/plugins/languageclient/languageclientinterface.h
index 770784931f..a53190b40d 100644
--- a/src/plugins/languageclient/languageclientinterface.h
+++ b/src/plugins/languageclient/languageclientinterface.h
@@ -89,7 +89,7 @@ protected:
private:
void readError();
void readOutput();
- void onProcessFinished(int exitCode, QProcess::ExitStatus exitStatus);
+ void onProcessFinished();
};
} // namespace LanguageClient
diff --git a/src/plugins/mesonprojectmanager/project/mesonprocess.cpp b/src/plugins/mesonprojectmanager/project/mesonprocess.cpp
index 9a6ca5a4c4..25b859ec73 100644
--- a/src/plugins/mesonprojectmanager/project/mesonprocess.cpp
+++ b/src/plugins/mesonprojectmanager/project/mesonprocess.cpp
@@ -166,7 +166,9 @@ void MesonProcess::setupProcess(const Command &command,
if (m_process)
disconnect(m_process.get());
m_process = std::make_unique<Utils::QtcProcess>();
- connect(m_process.get(), &QtcProcess::finished, this, &MesonProcess::handleProcessFinished);
+ connect(m_process.get(), &QtcProcess::finished, this, [this] {
+ handleProcessFinished(m_process->exitCode(), m_process->exitStatus());
+ });
connect(m_process.get(), &QtcProcess::errorOccurred, this, &MesonProcess::handleProcessError);
if (!captureStdo) {
connect(m_process.get(),
diff --git a/src/plugins/perforce/perforcechecker.cpp b/src/plugins/perforce/perforcechecker.cpp
index 620fb76fcd..5cd3c57ca9 100644
--- a/src/plugins/perforce/perforcechecker.cpp
+++ b/src/plugins/perforce/perforcechecker.cpp
@@ -133,19 +133,19 @@ void PerforceChecker::slotError(QProcess::ProcessError error)
}
}
-void PerforceChecker::slotFinished(int exitCode, QProcess::ExitStatus exitStatus)
+void PerforceChecker::slotFinished()
{
if (m_timedOut)
return;
- switch (exitStatus) {
+ switch (m_process.exitStatus()) {
case QProcess::CrashExit:
emitFailed(tr("\"%1\" crashed.").arg(QDir::toNativeSeparators(m_binary)));
break;
case QProcess::NormalExit:
- if (exitCode) {
+ if (m_process.exitCode()) {
const QString stdErr = QString::fromLocal8Bit(m_process.readAllStandardError());
emitFailed(tr("\"%1\" terminated with exit code %2: %3").
- arg(QDir::toNativeSeparators(m_binary)).arg(exitCode).arg(stdErr));
+ arg(QDir::toNativeSeparators(m_binary)).arg(m_process.exitCode()).arg(stdErr));
} else {
parseOutput(QString::fromLocal8Bit(m_process.readAllStandardOutput()));
}
diff --git a/src/plugins/perforce/perforcechecker.h b/src/plugins/perforce/perforcechecker.h
index c4d90d3009..3232979390 100644
--- a/src/plugins/perforce/perforcechecker.h
+++ b/src/plugins/perforce/perforcechecker.h
@@ -59,7 +59,7 @@ signals:
private:
void slotError(QProcess::ProcessError error);
- void slotFinished(int exitCode, QProcess::ExitStatus exitStatus);
+ void slotFinished();
void slotTimeOut();
void emitFailed(const QString &);
diff --git a/src/plugins/projectexplorer/abstractprocessstep.cpp b/src/plugins/projectexplorer/abstractprocessstep.cpp
index 6882fe1472..a460b11805 100644
--- a/src/plugins/projectexplorer/abstractprocessstep.cpp
+++ b/src/plugins/projectexplorer/abstractprocessstep.cpp
@@ -401,7 +401,7 @@ void AbstractProcessStep::finish(bool success)
emit finished(success);
}
-void AbstractProcessStep::slotProcessFinished(int, QProcess::ExitStatus)
+void AbstractProcessStep::slotProcessFinished()
{
QtcProcess *process = d->m_process.get();
if (!process) // Happens when the process was canceled and handed over to the Reaper.
diff --git a/src/plugins/projectexplorer/abstractprocessstep.h b/src/plugins/projectexplorer/abstractprocessstep.h
index 283b3ed730..6ddcc50cc9 100644
--- a/src/plugins/projectexplorer/abstractprocessstep.h
+++ b/src/plugins/projectexplorer/abstractprocessstep.h
@@ -76,7 +76,7 @@ protected:
private:
void processReadyReadStdOutput();
void processReadyReadStdError();
- void slotProcessFinished(int, QProcess::ExitStatus);
+ void slotProcessFinished();
class Private;
Private *d;
diff --git a/src/plugins/projectexplorer/applicationlauncher.cpp b/src/plugins/projectexplorer/applicationlauncher.cpp
index 449c52e8fe..489fcf66cd 100644
--- a/src/plugins/projectexplorer/applicationlauncher.cpp
+++ b/src/plugins/projectexplorer/applicationlauncher.cpp
@@ -138,8 +138,9 @@ ApplicationLauncherPrivate::ApplicationLauncherPrivate(ApplicationLauncher *pare
this, &ApplicationLauncherPrivate::readLocalStandardOutput);
connect(&m_guiProcess, &QtcProcess::errorOccurred,
this, &ApplicationLauncherPrivate::localGuiProcessError);
- connect(&m_guiProcess, &QtcProcess::finished,
- this, &ApplicationLauncherPrivate::localProcessDone);
+ connect(&m_guiProcess, &QtcProcess::finished, this, [this] {
+ localProcessDone(m_guiProcess.exitCode(), m_guiProcess.exitStatus());
+ });
connect(&m_guiProcess, &QtcProcess::started,
this, &ApplicationLauncherPrivate::handleProcessStarted);
connect(&m_guiProcess, &QtcProcess::errorOccurred,
@@ -151,8 +152,9 @@ ApplicationLauncherPrivate::ApplicationLauncherPrivate(ApplicationLauncher *pare
this, &ApplicationLauncherPrivate::handleProcessStarted);
connect(&m_consoleProcess, &ConsoleProcess::processError,
this, &ApplicationLauncherPrivate::localConsoleProcessError);
- connect(&m_consoleProcess, &ConsoleProcess::processStopped,
- this, &ApplicationLauncherPrivate::localProcessDone);
+ connect(&m_consoleProcess, &ConsoleProcess::processStopped, this, [this] {
+ localProcessDone(m_consoleProcess.exitCode(), m_consoleProcess.exitStatus());
+ });
connect(&m_consoleProcess, &ConsoleProcess::errorOccurred,
q, &ApplicationLauncher::error);
diff --git a/src/plugins/python/pythonutils.cpp b/src/plugins/python/pythonutils.cpp
index 8744502c82..af1c42b5ab 100644
--- a/src/plugins/python/pythonutils.cpp
+++ b/src/plugins/python/pythonutils.cpp
@@ -292,15 +292,16 @@ private:
.arg(m_killTimer.isActive() ? tr("user") : tr("time out")));
}
- void installFinished(int exitCode, QProcess::ExitStatus exitStatus)
+ void installFinished()
{
m_future.reportFinished();
- if (exitStatus == QProcess::NormalExit && exitCode == 0) {
+ if (m_process.result() == QtcProcess::FinishedWithSuccess) {
if (Client *client = registerLanguageServer(m_python))
LanguageClientManager::openDocumentWithClient(m_document, client);
} else {
Core::MessageManager::writeFlashing(
- tr("Installing the Python language server failed with exit code %1").arg(exitCode));
+ tr("Installing the Python language server failed with exit code %1")
+ .arg(m_process.exitCode()));
}
deleteLater();
}
diff --git a/src/plugins/winrt/winrtdevice.cpp b/src/plugins/winrt/winrtdevice.cpp
index 459f2d097e..4685106837 100644
--- a/src/plugins/winrt/winrtdevice.cpp
+++ b/src/plugins/winrt/winrtdevice.cpp
@@ -179,8 +179,10 @@ void WinRtDeviceFactory::onProcessError()
tr("Error while executing winrtrunner: %1").arg(m_process->errorString()));
}
-void WinRtDeviceFactory::onProcessFinished(int exitCode, QProcess::ExitStatus exitStatus)
+void WinRtDeviceFactory::onProcessFinished()
{
+ int exitCode = m_process->exitCode();
+ QProcess::ExitStatus exitStatus = m_process->exitStatus();
qCDebug(winrtDeviceLog) << __FUNCTION__ << "Exit code:" << exitCode <<"\tExit status:"
<< exitStatus;
if (exitStatus == QProcess::CrashExit) {
diff --git a/src/plugins/winrt/winrtdevice.h b/src/plugins/winrt/winrtdevice.h
index aeb77f64cc..b1063f5c4c 100644
--- a/src/plugins/winrt/winrtdevice.h
+++ b/src/plugins/winrt/winrtdevice.h
@@ -67,7 +67,7 @@ public:
private:
void onProcessError();
- void onProcessFinished(int exitCode, QProcess::ExitStatus exitStatus);
+ void onProcessFinished();
static bool allPrerequisitesLoaded();
QString findRunnerFilePath() const;
diff --git a/src/plugins/winrt/winrtrunnerhelper.cpp b/src/plugins/winrt/winrtrunnerhelper.cpp
index 06eecc4f34..c2a09585fb 100644
--- a/src/plugins/winrt/winrtrunnerhelper.cpp
+++ b/src/plugins/winrt/winrtrunnerhelper.cpp
@@ -144,13 +144,13 @@ void WinRtRunnerHelper::onProcessReadyReadStdErr()
appendMessage(QString::fromLocal8Bit(m_process->readAllStandardError()), Utils::StdErrFormat);
}
-void WinRtRunnerHelper::onProcessFinished(int exitCode, QProcess::ExitStatus exitStatus)
+void WinRtRunnerHelper::onProcessFinished()
{
QTC_ASSERT(m_process, return);
m_process->disconnect();
m_process->deleteLater();
m_process = nullptr;
- emit finished(exitCode, exitStatus);
+ emit finished();
}
void WinRtRunnerHelper::onProcessError(QProcess::ProcessError processError)
diff --git a/src/plugins/winrt/winrtrunnerhelper.h b/src/plugins/winrt/winrtrunnerhelper.h
index 5bbf7d4ddb..e5269a0726 100644
--- a/src/plugins/winrt/winrtrunnerhelper.h
+++ b/src/plugins/winrt/winrtrunnerhelper.h
@@ -55,7 +55,7 @@ public:
signals:
void started();
- void finished(int exitCode, QProcess::ExitStatus exitStatus);
+ void finished();
void error(QProcess::ProcessError error);
private:
@@ -63,7 +63,7 @@ private:
void onProcessReadyReadStdOut();
void onProcessReadyReadStdErr();
- void onProcessFinished(int exitCode, QProcess::ExitStatus exitStatus);
+ void onProcessFinished();
void onProcessError(QProcess::ProcessError processError);
void startWinRtRunner(const RunConf &conf);