diff --git a/src/plugins/debugger/qml/qmlcppengine.cpp b/src/plugins/debugger/qml/qmlcppengine.cpp index 387a3824265131e47d8caeab03626af07f1a9c71..7869dd7897adfa3180510930adfcac69e5225c32 100644 --- a/src/plugins/debugger/qml/qmlcppengine.cpp +++ b/src/plugins/debugger/qml/qmlcppengine.cpp @@ -20,7 +20,13 @@ DebuggerEngine *createQmlEngine(const DebuggerStartParameters &); DebuggerEngine *createQmlCppEngine(const DebuggerStartParameters &sp) { - return new QmlCppEngine(sp); + QmlCppEngine *newEngine = new QmlCppEngine(sp); + if (newEngine->cppEngine()) { + return newEngine; + } else { + delete newEngine; + return 0; + } } } // namespace Internal @@ -58,8 +64,10 @@ QmlCppEngine::QmlCppEngine(const DebuggerStartParameters &sp) } else { QString errorMessage; d->m_cppEngine = Internal::createCdbEngine(sp, &errorMessage); - if (!d->m_cppEngine) + if (!d->m_cppEngine) { qWarning("%s", qPrintable(errorMessage)); + return; + } } d->m_cppEngine->setRunInWrapperEngine(true);