diff options
author | Thomas Hartmann <Thomas.Hartmann@digia.com> | 2013-03-12 15:06:08 +0100 |
---|---|---|
committer | Thomas Hartmann <Thomas.Hartmann@digia.com> | 2013-03-12 15:17:30 +0100 |
commit | ab675bb143e5048037c9a04334410bec3751df26 (patch) | |
tree | e139590b009a7613649184fe9c21c1f5c08cf0fc /share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstancesignalspy.cpp | |
parent | 2b11c75cadce4b44f2ba8916840da5632160a222 (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.cpp | 5 |
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('/')); |