From 15629b037fc6213d38d2a08219a100fa9a401080 Mon Sep 17 00:00:00 2001 From: hjk <qtc-committer@nokia.com> Date: Tue, 20 Jul 2010 15:16:17 +0200 Subject: [PATCH] debugger: fix message when trying to shut down with a finished debugger --- src/plugins/debugger/debuggerplugin.cpp | 28 ++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp index 8aa7e399c01..904345b0e33 100644 --- a/src/plugins/debugger/debuggerplugin.cpp +++ b/src/plugins/debugger/debuggerplugin.cpp @@ -2744,21 +2744,35 @@ bool DebuggerListener::coreAboutToClose() DebuggerPlugin *plugin = DebuggerPlugin::instance(); if (!plugin) return true; + + // FIXME: Iterate over all running debuggers. // Ask to terminate the session. bool cleanTermination = false; switch (plugin->state()) { case DebuggerNotReady: - return true; - case EngineSetupOk: // Most importantly, terminating a running - case EngineSetupFailed: // debuggee can cause problems. + case DebuggerFinished: case InferiorUnrunnable: + return true; + case EngineSetupRequested: + case EngineSetupOk: + case EngineSetupFailed: + case InferiorSetupRequested: case InferiorSetupFailed: + case EngineRunRequested: + case InferiorRunRequested: + case InferiorRunOk: + case InferiorStopRequested: case InferiorStopOk: + case InferiorShutdownRequested: + case EngineShutdownRequested: case InferiorShutdownOk: - cleanTermination = true; - break; - default: - break; + case InferiorShutdownFailed: + case InferiorStopFailed: + case EngineRunFailed: + case InferiorRunFailed: + case EngineShutdownOk: + case EngineShutdownFailed: + return false; } const QString question = cleanTermination ? -- GitLab