summaryrefslogtreecommitdiff
path: root/src/libs/qmljs/qmljsmodelmanagerinterface.cpp
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@theqtcompany.com>2016-01-25 15:16:34 +0100
committerEike Ziller <eike.ziller@theqtcompany.com>2016-01-27 08:24:14 +0000
commita2e19ba1bec09294c7588a97722195cc390ea7a3 (patch)
tree7814e5ee5a75bebd12caf0160f99c9c444b95fed /src/libs/qmljs/qmljsmodelmanagerinterface.cpp
parentf26a4c2954b0251f8bccf9352592a53ee46227b1 (diff)
downloadqt-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.cpp6
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