diff options
author | Eike Ziller <eike.ziller@theqtcompany.com> | 2016-01-25 15:16:34 +0100 |
---|---|---|
committer | Eike Ziller <eike.ziller@theqtcompany.com> | 2016-01-27 08:24:14 +0000 |
commit | a2e19ba1bec09294c7588a97722195cc390ea7a3 (patch) | |
tree | 7814e5ee5a75bebd12caf0160f99c9c444b95fed /src/libs/qmljs/qmljsmodelmanagerinterface.cpp | |
parent | f26a4c2954b0251f8bccf9352592a53ee46227b1 (diff) | |
download | qt-creator-a2e19ba1bec09294c7588a97722195cc390ea7a3.tar.gz |
QmlJS: Exchange unsafe meta calls with QTimer::singleShot
Change-Id: I5596c3f506f1fb873536c03ed5b8f5df88f5ea06
Reviewed-by: Marco Benelli <marco.benelli@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
Diffstat (limited to 'src/libs/qmljs/qmljsmodelmanagerinterface.cpp')
-rw-r--r-- | src/libs/qmljs/qmljsmodelmanagerinterface.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/libs/qmljs/qmljsmodelmanagerinterface.cpp b/src/libs/qmljs/qmljsmodelmanagerinterface.cpp index c059e22d66..655608b36e 100644 --- a/src/libs/qmljs/qmljsmodelmanagerinterface.cpp +++ b/src/libs/qmljs/qmljsmodelmanagerinterface.cpp @@ -40,7 +40,6 @@ #include <QDir> #include <QFile> #include <QFileInfo> -#include <QMetaObject> #include <QRegExp> #include <QTextDocument> #include <QTextStream> @@ -1217,8 +1216,7 @@ void ModelManagerInterface::maybeQueueCppQmlTypeUpdate(const CPlusPlus::Document doc->releaseSourceAndAST(); // delegate actual queuing to the gui thread - QMetaObject::invokeMethod(this, "queueCppQmlTypeUpdate", - Q_ARG(CPlusPlus::Document::Ptr, doc), Q_ARG(bool, scan)); + QTimer::singleShot(0, this, [this, doc, scan]() { queueCppQmlTypeUpdate(doc, scan); }); } void ModelManagerInterface::queueCppQmlTypeUpdate(const CPlusPlus::Document::Ptr &doc, bool scan) @@ -1315,7 +1313,7 @@ void ModelManagerInterface::updateCppQmlTypes(QFutureInterface<void> &interface, qmlModelManager->m_cppDataHash = newData; if (hasNewInfo) // one could get away with re-linking the cpp types... - QMetaObject::invokeMethod(qmlModelManager, "asyncReset"); + QTimer::singleShot(0, qmlModelManager, &ModelManagerInterface::asyncReset); } ModelManagerInterface::CppDataHash ModelManagerInterface::cppData() const |