summaryrefslogtreecommitdiff
path: root/share
diff options
context:
space:
mode:
authorThomas Hartmann <Thomas.Hartmann@digia.com>2012-10-29 11:17:09 +0100
committerThomas Hartmann <Thomas.Hartmann@digia.com>2012-11-21 15:59:25 +0100
commitbd67bd8d638e41fe8db67c40a8c54af1dc3defeb (patch)
treea4a8cb78fdba842971746477c4a4a5bfdd81651a /share
parent2e3e97c4eca776accb90994cb0f2ccb78182e2b9 (diff)
downloadqt-creator-bd67bd8d638e41fe8db67c40a8c54af1dc3defeb.tar.gz
QmlDesigner: meta object fix
Change-Id: Ia5db0c5293eaf07d5141054f921a80987076532e Reviewed-by: Marco Bubke <marco.bubke@digia.com> Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
Diffstat (limited to 'share')
-rw-r--r--share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancemetaobject.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancemetaobject.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancemetaobject.cpp
index 548d87ac96..d655d9f2e2 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);