forked from qt-creator/qt-creator
ProjectExplorer: Do not change state of sibling RunWorkers
... when a RunWorker reportStopped(). We have now always a "main" RunWorker (again) that is in a better position to decide what to do with "lower" worker states than the RunControl. The overall RunControl stopped state meaning is not changed: It is Stopped if all workers are Stopped (or Done, or Failed) Change-Id: I04ce6a8cb5b2067ec05fd506f6adc6ca65de0c39 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -982,17 +982,14 @@ void RunControlPrivate::onWorkerStopped(RunWorker *worker)
|
||||
debugMessage(" Examining worker " + workerId);
|
||||
switch (worker->d->state) {
|
||||
case RunWorkerState::Initialized:
|
||||
debugMessage(" " + workerId + " was Initialized, setting to Done");
|
||||
worker->d->state = RunWorkerState::Done;
|
||||
debugMessage(" " + workerId + " was Initialized.");
|
||||
break;
|
||||
case RunWorkerState::Starting:
|
||||
worker->d->state = RunWorkerState::Stopping;
|
||||
debugMessage(" " + workerId + " was Starting, queuing stop");
|
||||
debugMessage(" " + workerId + " was Starting, waiting for its response");
|
||||
allDone = false;
|
||||
break;
|
||||
case RunWorkerState::Running:
|
||||
debugMessage(" " + workerId + " was Running, queuing stop");
|
||||
worker->d->state = RunWorkerState::Stopping;
|
||||
debugMessage(" " + workerId + " was Running, waiting for its response");
|
||||
allDone = false;
|
||||
break;
|
||||
case RunWorkerState::Stopping:
|
||||
|
Reference in New Issue
Block a user