summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarco Bubke <marco.bubke@nokia.com>2010-04-13 16:16:35 +0200
committercon <qtc-committer@nokia.com>2010-04-14 17:00:55 +0200
commitfa2d217c6b4794964adee9f75ac044c40b49c6d5 (patch)
tree50051c82aa824587f1589bfe70e52b3662e477b8
parentdecc1b1aa1e515f5be42e4bc9484ce001740b1e4 (diff)
downloadqt-creator-fa2d217c6b4794964adee9f75ac044c40b49c6d5.tar.gz
Fix crash for a dangling pointer
Task-Number: BAUHAUS-574 Reviewed-by: kkoehne (cherry picked from commit 629a4d66c17c38a3f458d4aa90a9804aca5a4645)
-rw-r--r--src/plugins/qmldesigner/core/instances/nodeinstancemetaobject.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/plugins/qmldesigner/core/instances/nodeinstancemetaobject.cpp b/src/plugins/qmldesigner/core/instances/nodeinstancemetaobject.cpp
index befbc524ee..bdd1131032 100644
--- a/src/plugins/qmldesigner/core/instances/nodeinstancemetaobject.cpp
+++ b/src/plugins/qmldesigner/core/instances/nodeinstancemetaobject.cpp
@@ -62,10 +62,12 @@ int NodeInstanceMetaObject::metaCall(QMetaObject::Call call, int id, void **a)
}
}
} else {
- if (parent())
- metaCallReturnValue = parent()->metaCall(call, id, a);
- else
- metaCallReturnValue = object()->qt_metacall(call, id, a);
+ if (!QObjectPrivate::get(object())->wasDeleted) {
+ if (parent())
+ metaCallReturnValue = parent()->metaCall(call, id, a);
+ else
+ metaCallReturnValue = object()->qt_metacall(call, id, a);
+ }
if (call == QMetaObject::WriteProperty
&& !property(id).hasNotifySignal()