summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAaron Kennedy <aaron.kennedy@nokia.com>2010-07-14 06:23:10 (GMT)
committerAaron Kennedy <aaron.kennedy@nokia.com>2010-07-14 06:23:10 (GMT)
commitbf40668cf05e6bb09ee0c7eca26c59f84fa14437 (patch)
tree235f6de6678201e96ca13941dbf7562235a83bc3
parent32c2412d55d2387e8b05892fe1b1d2d54b624d02 (diff)
downloadQt-bf40668cf05e6bb09ee0c7eca26c59f84fa14437.zip
Qt-bf40668cf05e6bb09ee0c7eca26c59f84fa14437.tar.gz
Qt-bf40668cf05e6bb09ee0c7eca26c59f84fa14437.tar.bz2
Check for binding having been deleted in more places
-rw-r--r--src/declarative/qml/qdeclarativebinding.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/declarative/qml/qdeclarativebinding.cpp b/src/declarative/qml/qdeclarativebinding.cpp
index e3b33c0..e096305 100644
--- a/src/declarative/qml/qdeclarativebinding.cpp
+++ b/src/declarative/qml/qdeclarativebinding.cpp
@@ -205,6 +205,9 @@ void QDeclarativeBinding::update(QDeclarativePropertyPrivate::WriteFlags flags)
} else if (d->property.object() &&
!QDeclarativePropertyPrivate::write(d->property, value, flags)) {
+ if (wasDeleted)
+ return;
+
QUrl url = QUrl(d->url);
int line = d->line;
if (url.isEmpty()) url = QUrl(QLatin1String("<Unknown File>"));
@@ -222,6 +225,9 @@ void QDeclarativeBinding::update(QDeclarativePropertyPrivate::WriteFlags flags)
QLatin1String(QMetaType::typeName(d->property.propertyType())));
}
+ if (wasDeleted)
+ return;
+
if (d->error.isValid()) {
if (!d->addError(ep)) ep->warning(this->error());
} else {