From 199dfbb4851ef62a665823910c7b4689a1a8afb6 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Date: Fri, 12 Jun 2009 17:34:34 +0200 Subject: [PATCH] fix gdb shutdown logic on gdb crash Reviewed-by: hjk --- src/plugins/debugger/gdb/gdbengine.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp index 65f866b5831..130d4608b2b 100644 --- a/src/plugins/debugger/gdb/gdbengine.cpp +++ b/src/plugins/debugger/gdb/gdbengine.cpp @@ -205,14 +205,17 @@ void GdbEngine::initializeVariables() void GdbEngine::gdbProcError(QProcess::ProcessError error) { QString msg; + bool kill = true; switch (error) { case QProcess::FailedToStart: + kill = false; msg = tr("The Gdb process failed to start. Either the " "invoked program '%1' is missing, or you may have insufficient " "permissions to invoke the program.") .arg(theDebuggerStringSetting(GdbLocation)); break; case QProcess::Crashed: + kill = false; msg = tr("The Gdb process crashed some time after starting " "successfully."); break; @@ -238,7 +241,8 @@ void GdbEngine::gdbProcError(QProcess::ProcessError error) q->showStatusMessage(msg); QMessageBox::critical(q->mainWindow(), tr("Error"), msg); // act as if it was closed by the core - q->exitDebugger(); + if (kill) + q->exitDebugger(); } void GdbEngine::uploadProcError(QProcess::ProcessError error) -- GitLab