aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOswald Buddenhagen <oswald.buddenhagen@nokia.com>2009-11-09 22:07:56 +0100
committercon <qtc-committer@nokia.com>2009-11-10 14:01:06 +0100
commitb1ef994c328f0dd5b70308567f1ab6629f49715f (patch)
tree0d7438dda7a46b43f0d2a2e6035ceaf82205b340
parented855cbbbcf1673709c769d4193ff78fbc958db0 (diff)
further cleanups in less expected shutdown paths
Reviewed-by: hjk (cherry picked from commit 23e06304f8b6c917a9fbbb4b34f7af02d5096913)
-rw-r--r--src/plugins/debugger/gdb/gdbengine.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp
index e1b1f81bfe7..8a26efb3f52 100644
--- a/src/plugins/debugger/gdb/gdbengine.cpp
+++ b/src/plugins/debugger/gdb/gdbengine.cpp
@@ -285,6 +285,8 @@ void GdbEngine::initializeVariables()
m_inbuffer.clear();
+ m_commandTimer->stop();
+
// ConverterState has no reset() function.
m_outputCodecState.~ConverterState();
new (&m_outputCodecState) QTextCodec::ConverterState();
@@ -1456,6 +1458,7 @@ void GdbEngine::shutdown()
case InferiorRunning:
case InferiorStopping:
case InferiorStopped:
+ m_commandsToRunOnTemporaryBreak.clear();
postCommand(_(m_gdbAdapter->inferiorShutdownCommand()),
NeedsStop | LosesChild, CB(handleInferiorShutdown));
break;
@@ -1496,6 +1499,7 @@ void GdbEngine::handleGdbExit(const GdbResponse &response)
{
if (response.resultClass == GdbResultExit) {
debugMessage(_("GDB CLAIMS EXIT; WAITING"));
+ m_commandsDoneCallback = 0;
// don't set state here, this will be handled in handleGdbFinished()
} else {
QString msg = m_gdbAdapter->msgGdbStopFailed(_(response.data.findChild("msg").data()));