From bd67bd8d638e41fe8db67c40a8c54af1dc3defeb Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Mon, 29 Oct 2012 11:17:09 +0100 Subject: [PATCH] QmlDesigner: meta object fix Change-Id: Ia5db0c5293eaf07d5141054f921a80987076532e Reviewed-by: Marco Bubke Reviewed-by: Thomas Hartmann --- .../qmlpuppet/qml2puppet/instances/nodeinstancemetaobject.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancemetaobject.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancemetaobject.cpp index 548d87ac967..d655d9f2e28 100644 --- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancemetaobject.cpp +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancemetaobject.cpp @@ -154,12 +154,14 @@ void NodeInstanceMetaObject::init(QObject *object, QQmlEngine *engine) //create cache cache = m_cache = QQmlEnginePrivate::get(engine)->cache(this); + cache->addref(); //If our parent is not a VMEMetaObject we just se the flag to false again if (constructedMetaData(metaData)) QQmlData::get(object)->hasVMEMetaObject = false; nodeInstanceMetaObjectList.insert(this, true); + hasAssignedMetaObjectData = true; } NodeInstanceMetaObject::NodeInstanceMetaObject(const ObjectNodeInstance::Pointer &nodeInstance, QQmlEngine *engine) @@ -193,6 +195,7 @@ NodeInstanceMetaObject::NodeInstanceMetaObject(const ObjectNodeInstancePointer & NodeInstanceMetaObject::~NodeInstanceMetaObject() { + cache->release(); m_type->release(); nodeInstanceMetaObjectList.remove(this);