diff options
-rw-r--r-- | src/plugins/qmltooling/qmldbg_profiler/qqmlenginecontrolservice.cpp | 5 | ||||
-rw-r--r-- | src/plugins/qmltooling/qmldbg_profiler/qqmlenginecontrolservice.h | 1 |
2 files changed, 4 insertions, 2 deletions
diff --git a/src/plugins/qmltooling/qmldbg_profiler/qqmlenginecontrolservice.cpp b/src/plugins/qmltooling/qmldbg_profiler/qqmlenginecontrolservice.cpp index 0ed13d5105..9918a95116 100644 --- a/src/plugins/qmltooling/qmldbg_profiler/qqmlenginecontrolservice.cpp +++ b/src/plugins/qmltooling/qmldbg_profiler/qqmlenginecontrolservice.cpp @@ -46,6 +46,7 @@ QT_BEGIN_NAMESPACE QQmlEngineControlServiceImpl::QQmlEngineControlServiceImpl(QObject *parent) : QQmlEngineControlService(1, parent) { + blockingMode = QQmlDebugConnector::instance()->blockingMode(); } void QQmlEngineControlServiceImpl::messageReceived(const QByteArray &message) @@ -68,7 +69,7 @@ void QQmlEngineControlServiceImpl::messageReceived(const QByteArray &message) void QQmlEngineControlServiceImpl::engineAboutToBeAdded(QJSEngine *engine) { QMutexLocker lock(&dataMutex); - if (state() == Enabled) { + if (blockingMode && state() == Enabled) { Q_ASSERT(!stoppingEngines.contains(engine)); Q_ASSERT(!startingEngines.contains(engine)); startingEngines.append(engine); @@ -81,7 +82,7 @@ void QQmlEngineControlServiceImpl::engineAboutToBeAdded(QJSEngine *engine) void QQmlEngineControlServiceImpl::engineAboutToBeRemoved(QJSEngine *engine) { QMutexLocker lock(&dataMutex); - if (state() == Enabled) { + if (blockingMode && state() == Enabled) { Q_ASSERT(!stoppingEngines.contains(engine)); Q_ASSERT(!startingEngines.contains(engine)); stoppingEngines.append(engine); diff --git a/src/plugins/qmltooling/qmldbg_profiler/qqmlenginecontrolservice.h b/src/plugins/qmltooling/qmldbg_profiler/qqmlenginecontrolservice.h index 1138310820..6392944519 100644 --- a/src/plugins/qmltooling/qmldbg_profiler/qqmlenginecontrolservice.h +++ b/src/plugins/qmltooling/qmldbg_profiler/qqmlenginecontrolservice.h @@ -79,6 +79,7 @@ protected: QMutex dataMutex; QList<QJSEngine *> startingEngines; QList<QJSEngine *> stoppingEngines; + bool blockingMode; void messageReceived(const QByteArray &) Q_DECL_OVERRIDE; void engineAboutToBeAdded(QJSEngine *) Q_DECL_OVERRIDE; |