aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOswald Buddenhagen <oswald.buddenhagen@gmx.de>2020-12-09 18:52:45 +0100
committerOswald Buddenhagen <oswald.buddenhagen@gmx.de>2020-12-11 14:47:00 +0000
commit65fb83089e3c50ca0e59524b700703e676560eca (patch)
tree5fea08e361e702d16c32232ac1bae6fe5022f3f3
parentef3821c6b90870c1ec86af6faaff09cffb2b360a (diff)
fix waiting in SynchronousProcess::runBlocking()
the conditions on the waitForFinished() calls were inverted. the visible effect of this was that 'Hang' was never reported. Change-Id: I9937fce58189eebf891000840597158b4bffd028 Reviewed-by: Orgad Shaneh <orgads@gmail.com>
-rw-r--r--src/libs/utils/synchronousprocess.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/libs/utils/synchronousprocess.cpp b/src/libs/utils/synchronousprocess.cpp
index f7629238e7..9f52033e43 100644
--- a/src/libs/utils/synchronousprocess.cpp
+++ b/src/libs/utils/synchronousprocess.cpp
@@ -537,11 +537,11 @@ SynchronousProcessResponse SynchronousProcess::runBlocking(const CommandLine &cm
return d->m_result;
}
d->m_process.closeWriteChannel();
- if (d->m_process.waitForFinished(d->m_maxHangTimerCount * 1000)) {
+ if (!d->m_process.waitForFinished(d->m_maxHangTimerCount * 1000)) {
if (d->m_process.state() == QProcess::Running) {
d->m_result.result = SynchronousProcessResponse::Hang;
d->m_process.terminate();
- if (d->m_process.waitForFinished(1000) && d->m_process.state() == QProcess::Running) {
+ if (!d->m_process.waitForFinished(1000) && d->m_process.state() == QProcess::Running) {
d->m_process.kill();
d->m_process.waitForFinished(1000);
}