From b8d69b37fcdfc187699435e635048573c81e6ee5 Mon Sep 17 00:00:00 2001 From: Kai Koehne <kai.koehne@nokia.com> Date: Tue, 10 Apr 2012 11:51:48 +0200 Subject: [PATCH] QmlCppEngine: Call quitDebugger already in InferiorShutdownRequested Doing it in (CppEngine) EngineShutdownOk will result in a write to an already closed socket. Change-Id: Ie9712f33d57348ecb27e31eaeb44f42f159a400c Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com> --- src/plugins/debugger/qml/qmlcppengine.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/plugins/debugger/qml/qmlcppengine.cpp b/src/plugins/debugger/qml/qmlcppengine.cpp index 91297c9d7de..fed687bed1b 100644 --- a/src/plugins/debugger/qml/qmlcppengine.cpp +++ b/src/plugins/debugger/qml/qmlcppengine.cpp @@ -684,6 +684,7 @@ void QmlCppEngine::slaveEngineStateChanged || state() == InferiorStopOk, qDebug() << state()); if (state() == InferiorStopOk) setState(InferiorShutdownRequested); + qmlEngine()->quitDebugger(); break; } case InferiorShutdownFailed: { @@ -703,7 +704,6 @@ void QmlCppEngine::slaveEngineStateChanged case EngineShutdownRequested: { // set by queueShutdownEngine() QTC_ASSERT(state() == EngineShutdownRequested, qDebug() << state()); - qmlEngine()->quitDebugger(); break; } case EngineShutdownFailed: { @@ -741,11 +741,12 @@ void QmlCppEngine::slaveEngineStateChanged } QTC_ASSERT(state() == InferiorRunOk - || state() == InferiorStopRequested, qDebug() << state()); + || state() == InferiorStopRequested + || state() == InferiorShutdownRequested, qDebug() << state()); if (state() == InferiorRunOk) notifyInferiorSpontaneousStop(); - else + else if (state() == InferiorStopRequested) notifyInferiorStopOk(); } -- GitLab