diff --git a/src/plugins/debugger/qml/qmlcppengine.cpp b/src/plugins/debugger/qml/qmlcppengine.cpp index 17a820b0bd7e6751c3dd672cc7b5a389c56c2b49..fbc7c1f78b62334a6795f2cdf201bac2214e9b32 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 fb3b5c66e746001ec1ce94421964fbe22a228add..efddd12f8503898af7433cb57dfc73285307aaaa 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();