summaryrefslogtreecommitdiff
path: root/src/plugins/qmldesigner/designercore/instances/nodeinstancemetaobject.cpp
diff options
context:
space:
mode:
authorThomas Hartmann <Thomas.Hartmann@nokia.com>2011-05-06 13:28:09 +0200
committerThomas Hartmann <Thomas.Hartmann@nokia.com>2011-05-06 13:28:09 +0200
commit134e41ee541ae64c5276aa8facc554840f6497ef (patch)
treeadc1068982022890aefd452a5fddc384ac0cdc19 /src/plugins/qmldesigner/designercore/instances/nodeinstancemetaobject.cpp
parent0515e73e318e3b20278c56dff71aa26cd6b2696a (diff)
downloadqt-creator-134e41ee541ae64c5276aa8facc554840f6497ef.tar.gz
QmlDesigner.nodeInstances: crash fix
In some cases object() != m_nodeInstance->object(). Reading on the worng type of QObject can lead to very interesting effects. (e. g. decrementing the pointer to the vtable) Task-Nr: QTCREATORBUG-4675 Reviewed-by: Marco Bubke
Diffstat (limited to 'src/plugins/qmldesigner/designercore/instances/nodeinstancemetaobject.cpp')
-rw-r--r--src/plugins/qmldesigner/designercore/instances/nodeinstancemetaobject.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/plugins/qmldesigner/designercore/instances/nodeinstancemetaobject.cpp b/src/plugins/qmldesigner/designercore/instances/nodeinstancemetaobject.cpp
index 4d04bcd3ea..e51cc3a123 100644
--- a/src/plugins/qmldesigner/designercore/instances/nodeinstancemetaobject.cpp
+++ b/src/plugins/qmldesigner/designercore/instances/nodeinstancemetaobject.cpp
@@ -92,7 +92,7 @@ int NodeInstanceMetaObject::metaCall(QMetaObject::Call call, int id, void **a)
if (call == QMetaObject::WriteProperty && !property(id).hasNotifySignal())
{
- oldValue = property(id).read(m_nodeInstance->object());
+ oldValue = property(id).read(object());
}
ObjectNodeInstance::Pointer objectNodeInstance = m_nodeInstance.toStrongRef();
@@ -119,7 +119,7 @@ int NodeInstanceMetaObject::metaCall(QMetaObject::Call call, int id, void **a)
if (metaCallReturnValue >= 0
&& call == QMetaObject::WriteProperty
&& !property(id).hasNotifySignal()
- && oldValue != property(id).read(m_nodeInstance->object()))
+ && oldValue != property(id).read(object()))
notifyPropertyChange(id);
return metaCallReturnValue;