aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/qml/qqmlvmemetaobject.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/qml/qml/qqmlvmemetaobject.cpp')
-rw-r--r--src/qml/qml/qqmlvmemetaobject.cpp12
1 files changed, 2 insertions, 10 deletions
diff --git a/src/qml/qml/qqmlvmemetaobject.cpp b/src/qml/qml/qqmlvmemetaobject.cpp
index ce574875e3..902a6073b8 100644
--- a/src/qml/qml/qqmlvmemetaobject.cpp
+++ b/src/qml/qml/qqmlvmemetaobject.cpp
@@ -627,10 +627,7 @@ int QQmlVMEMetaObject::metaCall(QMetaObject::Call c, int _id, void **a)
if (type != QVariant::Invalid) {
if (valueIndex != -1) {
- QQmlEnginePrivate *ep = ctxt?QQmlEnginePrivate::get(ctxt->engine):0;
- QQmlValueType *valueType = 0;
- if (ep) valueType = ep->valueTypes[type];
- else valueType = QQmlValueTypeFactory::valueType(type);
+ QQmlValueType *valueType = QQmlValueTypeFactory::valueType(type);
Q_ASSERT(valueType);
//
@@ -683,9 +680,6 @@ int QQmlVMEMetaObject::metaCall(QMetaObject::Call c, int _id, void **a)
updated = true;
}
- if (!ep)
- delete valueType;
-
if (updated)
return -1;
} else {
@@ -880,9 +874,7 @@ int QQmlVMEMetaObject::metaCall(QMetaObject::Call c, int _id, void **a)
if (d->isValueTypeAlias()) {
// Value type property
- QQmlEnginePrivate *ep = QQmlEnginePrivate::get(ctxt->engine);
-
- QQmlValueType *valueType = ep->valueTypes[d->valueType()];
+ QQmlValueType *valueType = QQmlValueTypeFactory::valueType(d->valueType());
Q_ASSERT(valueType);
valueType->read(target, d->propertyIndex());