From 2efdeb5cd00ca012642d3b6944b04a04326c3f00 Mon Sep 17 00:00:00 2001 From: hjk <qtc-committer@nokia.com> Date: Tue, 26 Oct 2010 17:08:12 +0200 Subject: [PATCH] debugger: fix EngineSetupFailed path Task-number: QTCREATORBUG-2837 --- src/plugins/debugger/debuggerengine.cpp | 2 +- src/plugins/debugger/debuggerplugin.cpp | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/plugins/debugger/debuggerengine.cpp b/src/plugins/debugger/debuggerengine.cpp index 52239c202b8..72915e4f6fa 100644 --- a/src/plugins/debugger/debuggerengine.cpp +++ b/src/plugins/debugger/debuggerengine.cpp @@ -1178,7 +1178,7 @@ void DebuggerEngine::notifyEngineSetupFailed() setState(EngineSetupFailed); QTC_ASSERT(d->m_runControl, return); d->m_runControl->startFailed(); - d->queueShutdownEngine(); + setState(DebuggerFinished); } void DebuggerEngine::notifyEngineSetupOk() diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp index c178d8a2ae6..7b0edfdb2c2 100644 --- a/src/plugins/debugger/debuggerplugin.cpp +++ b/src/plugins/debugger/debuggerplugin.cpp @@ -172,6 +172,13 @@ // Transitions marked by '*' are done asynchronously. // The GdbEngine->setupEngine() function is described in more detail below. // +// The engines are responsible for local roll-back to the last +// acknowledged state before calling notify*Failed. I.e. before calling +// notifyEngineSetupFailed() any process started during setupEngine() +// so far must be terminated. +// +// +// // DebuggerNotReady // + // EngineSetupRequested -- GitLab