diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp index 067be6fe3bc46e1001fbeec6491369ea48993aa1..9e38513c04f4f39a6431ed726a340a91908b538f 100644 --- a/src/plugins/debugger/gdb/gdbengine.cpp +++ b/src/plugins/debugger/gdb/gdbengine.cpp @@ -652,7 +652,6 @@ void GdbEngine::interruptInferiorTemporarily() foreach (const GdbCommand &cmd, m_commandsToRunOnTemporaryBreak) { if (cmd.flags & LosesChild) { notifyInferiorIll(); - //setState(InferiorStopRequested_Kill); break; } } @@ -751,7 +750,6 @@ void GdbEngine::postCommandHelper(const GdbCommand &cmd) if (state() == InferiorStopRequested) { if (cmd.flags & LosesChild) { notifyInferiorIll(); - //setState(InferiorStopRequested_Kill); } showMessage(_("CHILD ALREADY BEING INTERRUPTED. STILL HOPING.")); // Calling shutdown() here breaks all situations where two @@ -792,14 +790,14 @@ void GdbEngine::flushQueuedCommands() void GdbEngine::flushCommand(const GdbCommand &cmd0) { - GdbCommand cmd = cmd0; - if (state() == DebuggerNotReady) { - showMessage(_(cmd.command), LogInput); - showMessage(_("GDB PROCESS NOT RUNNING, PLAIN CMD IGNORED: " + cmd.command)); + if (!stateAcceptsGdbCommands(state())) { + showMessage(_(cmd0.command), LogInput); + showMessage(_("GDB PROCESS ACCEPTS NO CMD IN STATE %1 ").arg(state())); return; } ++currentToken(); + GdbCommand cmd = cmd0; cmd.postTime = QTime::currentTime(); m_cookieForToken[currentToken()] = cmd; if (cmd.flags & ConsoleCommand)