TerminalRunner: Connect to QtcProcess::done() signal

Instead of connecting to errorOccurred() and finished() signals.

Change-Id: I3c96c61fab4dd23e75b773d6347eb3aa62ce3dd0
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Jarek Kobus
2022-04-14 11:03:32 +02:00
parent 44c7020651
commit e398092251
2 changed files with 8 additions and 7 deletions

View File

@@ -198,12 +198,10 @@ void TerminalRunner::start()
m_stubProc->setTerminalMode(HostOsInfo::isWindowsHost()
? TerminalMode::Suspend : TerminalMode::Debug);
connect(m_stubProc, &QtcProcess::errorOccurred,
this, &TerminalRunner::stubError);
connect(m_stubProc, &QtcProcess::started,
this, &TerminalRunner::stubStarted);
connect(m_stubProc, &QtcProcess::finished,
this, &TerminalRunner::reportDone);
connect(m_stubProc, &QtcProcess::done,
this, &TerminalRunner::stubDone);
m_stubProc->setEnvironment(stub.environment);
m_stubProc->setWorkingDirectory(stub.workingDirectory);
@@ -227,9 +225,12 @@ void TerminalRunner::stubStarted()
reportStarted();
}
void TerminalRunner::stubError()
void TerminalRunner::stubDone()
{
reportFailure(m_stubProc->errorString());
if (m_stubProc->error() != QProcess::UnknownError)
reportFailure(m_stubProc->errorString());
if (m_stubProc->error() != QProcess::FailedToStart)
reportDone();
}
} // namespace Internal

View File

@@ -85,7 +85,7 @@ private:
void stop() final;
void stubStarted();
void stubError();
void stubDone();
Utils::QtcProcess *m_stubProc = nullptr;
std::function<ProjectExplorer::Runnable()> m_stubRunnable;