summaryrefslogtreecommitdiffstats
path: root/src/declarative
diff options
context:
space:
mode:
authorYann Bodson <yann.bodson@nokia.com>2010-03-17 07:27:20 (GMT)
committerYann Bodson <yann.bodson@nokia.com>2010-03-17 07:27:20 (GMT)
commitc8566c74bb9c285e6b7b1cf1d22f7de9077c2e58 (patch)
tree78541955ec08853fa8faea2af3cac5cb269269f4 /src/declarative
parent41b5a39aa3749ce95fa581236da0404f58672ca7 (diff)
parent8b6f892ae48d296875a295381d4f67a8a5968a30 (diff)
downloadQt-c8566c74bb9c285e6b7b1cf1d22f7de9077c2e58.zip
Qt-c8566c74bb9c285e6b7b1cf1d22f7de9077c2e58.tar.gz
Qt-c8566c74bb9c285e6b7b1cf1d22f7de9077c2e58.tar.bz2
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7
Diffstat (limited to 'src/declarative')
-rw-r--r--src/declarative/qml/qdeclarativeexpression.cpp8
-rw-r--r--src/declarative/qml/qdeclarativenotifier_p.h20
2 files changed, 19 insertions, 9 deletions
diff --git a/src/declarative/qml/qdeclarativeexpression.cpp b/src/declarative/qml/qdeclarativeexpression.cpp
index 609eb39..20863c7 100644
--- a/src/declarative/qml/qdeclarativeexpression.cpp
+++ b/src/declarative/qml/qdeclarativeexpression.cpp
@@ -95,7 +95,13 @@ QDeclarativeExpressionPrivate::QDeclarativeExpressionPrivate(QDeclarativeExpress
QDeclarativeExpressionPrivate::~QDeclarativeExpressionPrivate()
{
- if (data) { data->q = 0; data->release(); data = 0; }
+ if (data) {
+ delete [] data->guardList;
+ data->guardList = 0;
+ data->q = 0;
+ data->release();
+ data = 0;
+ }
}
void QDeclarativeExpressionPrivate::init(QDeclarativeContextData *ctxt, const QString &expr,
diff --git a/src/declarative/qml/qdeclarativenotifier_p.h b/src/declarative/qml/qdeclarativenotifier_p.h
index a0e6b43..2a8087e 100644
--- a/src/declarative/qml/qdeclarativenotifier_p.h
+++ b/src/declarative/qml/qdeclarativenotifier_p.h
@@ -112,18 +112,22 @@ private:
QDeclarativeNotifier::QDeclarativeNotifier()
: endpoints(0)
{
- QDeclarativeNotifierEndpoint *endpoint = endpoints;
- while (endpoint) {
- QDeclarativeNotifierEndpoint *next = endpoint->asNotifier()->next;
- endpoint->asNotifier()->next = 0;
- endpoint->asNotifier()->prev = 0;
- endpoint->asNotifier()->notifier = 0;
- endpoint = next;
- }
}
QDeclarativeNotifier::~QDeclarativeNotifier()
{
+ QDeclarativeNotifierEndpoint *endpoint = endpoints;
+ while (endpoint) {
+ QDeclarativeNotifierEndpoint::Notifier *n = endpoint->asNotifier();
+ endpoint = n->next;
+
+ n->next = 0;
+ n->prev = 0;
+ n->notifier = 0;
+ if (n->disconnected) *n->disconnected = 0;
+ n->disconnected = 0;
+ }
+ endpoints = 0;
}
void QDeclarativeNotifier::notify()