diff --git a/src/plugins/debugger/qml/qmlcppengine.cpp b/src/plugins/debugger/qml/qmlcppengine.cpp index 17a820b0bd7..fbc7c1f78b6 100644 --- a/src/plugins/debugger/qml/qmlcppengine.cpp +++ b/src/plugins/debugger/qml/qmlcppengine.cpp @@ -317,6 +317,19 @@ void QmlCppEngine::assignValueInDebugger(const WatchData *data, d->m_activeEngine->assignValueInDebugger(data, expr, value); } +void QmlCppEngine::notifyInferiorIll() +{ + //This will eventually shutdown the engine + //Set final state to avoid quitDebugger() being called + //after this call + setTargetState(DebuggerFinished); + + //Call notifyInferiorIll of cpp engine + //as qml engine will follow state transitions + //of cpp engine + d->m_cppEngine->notifyInferiorIll(); +} + void QmlCppEngine::detachDebugger() { d->m_qmlEngine->detachDebugger(); diff --git a/src/plugins/debugger/qml/qmlcppengine.h b/src/plugins/debugger/qml/qmlcppengine.h index fb3b5c66e74..efddd12f850 100644 --- a/src/plugins/debugger/qml/qmlcppengine.h +++ b/src/plugins/debugger/qml/qmlcppengine.h @@ -98,6 +98,8 @@ public: Internal::QtMessageLogHandler *qtMessageLogHandler() const; + void notifyInferiorIll(); + protected: void detachDebugger(); void executeStep();