From 4023e56d421e9747e33de03b75fc22a4e02333bc Mon Sep 17 00:00:00 2001 From: hjk Date: Wed, 9 Aug 2017 12:06:05 +0200 Subject: [PATCH] ProjectExplorer: Allow RunWorker::Starting -> Stopping Can happen on worker startup, e.g. missing binaries, permissions, ... Change-Id: Ibeee0a6992af80d3486b00890664e83525f17204 Reviewed-by: Ulf Hermann --- src/plugins/projectexplorer/runconfiguration.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/plugins/projectexplorer/runconfiguration.cpp b/src/plugins/projectexplorer/runconfiguration.cpp index 2c26207c83e..0359bbd72bc 100644 --- a/src/plugins/projectexplorer/runconfiguration.cpp +++ b/src/plugins/projectexplorer/runconfiguration.cpp @@ -825,7 +825,9 @@ void RunControlPrivate::continueStart() void RunControlPrivate::initiateStop() { - checkState(RunControlState::Running); + if (state != RunControlState::Starting && state != RunControlState::Running) + qDebug() << "Unexpected initiateStop() in state" << stateName(state); + setState(RunControlState::Stopping); debugMessage("Queue: Stopping for all workers"); @@ -1214,6 +1216,7 @@ bool RunControlPrivate::isAllowedTransition(RunControlState from, RunControlStat || to == RunControlState::Finishing; case RunControlState::Starting: return to == RunControlState::Running + || to == RunControlState::Stopping || to == RunControlState::Finishing; case RunControlState::Running: return to == RunControlState::Stopping