aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsapi/qjsengine_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/qml/jsapi/qjsengine_p.h')
-rw-r--r--src/qml/jsapi/qjsengine_p.h17
1 files changed, 3 insertions, 14 deletions
diff --git a/src/qml/jsapi/qjsengine_p.h b/src/qml/jsapi/qjsengine_p.h
index 2b462451ed..cbfe0f14a3 100644
--- a/src/qml/jsapi/qjsengine_p.h
+++ b/src/qml/jsapi/qjsengine_p.h
@@ -55,6 +55,7 @@
#include <QtCore/qmutex.h>
#include "qjsengine.h"
#include "private/qtqmlglobal_p.h"
+#include <private/qqmlmetatype_p.h>
QT_BEGIN_NAMESPACE
@@ -110,14 +111,6 @@ public:
// These methods may be called from the QML loader thread
inline QQmlPropertyCache *cache(QObject *obj);
inline QQmlPropertyCache *cache(const QMetaObject *);
-
-private:
- // Must be called locked
- QQmlPropertyCache *createCache(const QMetaObject *);
-
- // These members must be protected by a QJSEnginePrivate::Locker as they are required by
- // the threaded loader. Only access them through their respective accessor methods.
- QHash<const QMetaObject *, QQmlPropertyCache *> propertyCache;
};
QJSEnginePrivate::Locker::Locker(const QJSEngine *e)
@@ -174,9 +167,7 @@ QQmlPropertyCache *QJSEnginePrivate::cache(QObject *obj)
Locker locker(this);
const QMetaObject *mo = obj->metaObject();
- QQmlPropertyCache *rv = propertyCache.value(mo);
- if (!rv) rv = createCache(mo);
- return rv;
+ return QQmlMetaType::propertyCache(mo);
}
/*!
@@ -193,9 +184,7 @@ QQmlPropertyCache *QJSEnginePrivate::cache(const QMetaObject *metaObject)
Q_ASSERT(metaObject);
Locker locker(this);
- QQmlPropertyCache *rv = propertyCache.value(metaObject);
- if (!rv) rv = createCache(metaObject);
- return rv;
+ return QQmlMetaType::propertyCache(metaObject);
}