aboutsummaryrefslogtreecommitdiffstats
path: root/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancesignalspy.cpp
diff options
context:
space:
mode:
authorThomas Hartmann <Thomas.Hartmann@digia.com>2013-03-12 15:06:08 +0100
committerThomas Hartmann <Thomas.Hartmann@digia.com>2013-03-12 15:17:30 +0100
commitab675bb143e5048037c9a04334410bec3751df26 (patch)
treee139590b009a7613649184fe9c21c1f5c08cf0fc /share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancesignalspy.cpp
parent2b11c75cadce4b44f2ba8916840da5632160a222 (diff)
QmlDesigner: fix memory usage of qml2puppet
In Qt Quick 2 the parent property is writable. Therefore the InstanceSpy always collected the complete object tree waisting memory. Change-Id: I44f2d1ad90ef2bbea34a7cbd414f88cae37e0462 Reviewed-by: Marco Bubke <marco.bubke@digia.com>
Diffstat (limited to 'share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancesignalspy.cpp')
-rw-r--r--share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancesignalspy.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancesignalspy.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancesignalspy.cpp
index 35c5c044d7..9acfd0033a 100644
--- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancesignalspy.cpp
+++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancesignalspy.cpp
@@ -82,8 +82,9 @@ void NodeInstanceSignalSpy::registerObject(QObject *spiedObject, const QString &
// search recursive in objects
if (metaProperty.isReadable()
- && metaProperty.isWritable()
- && QQmlMetaType::isQObject(metaProperty.userType())) {
+ && metaProperty.isWritable()
+ && QQmlMetaType::isQObject(metaProperty.userType())
+ && QLatin1String(metaProperty.name()) != QLatin1String("parent")) {
QObject *propertyObject = QQmlMetaType::toQObject(metaProperty.read(spiedObject));
if (propertyObject)
registerObject(propertyObject, prefix + metaProperty.name() + QLatin1Char('/'));