aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@qt.io>2018-03-19 10:47:24 +0100
committerUlf Hermann <ulf.hermann@qt.io>2018-03-19 10:27:40 +0000
commit958e412a25523cc031564faae81c569aa6c3b01f (patch)
tree04b0f59d972e3ea10cd9711fcc22b68dc8e986be /src
parenta3ad52526f79c1528f170c8affe5af00b68ca61d (diff)
QML debugger: Don't crash when creating objects on engine destruction
You can create further objects while the QML engine is being destroyed. The debug service is not interested in those because they will be rather short lived anyway. Task-number: QTBUG-62458 Change-Id: If5395ef058268e0e956d159bc636495da1c0c98f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.cpp b/src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.cpp
index 288ad243ce..236109d041 100644
--- a/src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.cpp
+++ b/src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.cpp
@@ -812,7 +812,8 @@ void QQmlEngineDebugServiceImpl::engineAboutToBeRemoved(QJSEngine *engine)
void QQmlEngineDebugServiceImpl::objectCreated(QJSEngine *engine, QObject *object)
{
Q_ASSERT(engine);
- Q_ASSERT(m_engines.contains(engine));
+ if (!m_engines.contains(engine))
+ return;
int engineId = QQmlDebugService::idForObject(engine);
int objectId = QQmlDebugService::idForObject(object);