summaryrefslogtreecommitdiffstats
path: root/src/declarative/qml/qmlbindingoptimizations.cpp
diff options
context:
space:
mode:
authorYann Bodson <yann.bodson@nokia.com>2009-08-25 01:24:31 (GMT)
committerYann Bodson <yann.bodson@nokia.com>2009-08-25 01:24:31 (GMT)
commit128828d0fc00dd75f155bed1eaaea287a9de15f1 (patch)
treec1f23802dfcc476118d023d83aa100ce4575ec49 /src/declarative/qml/qmlbindingoptimizations.cpp
parent1970d1fb78a300247cd3f14445da481558eef1af (diff)
parentf69d8805291ee46856b21d9091693cdc139765b8 (diff)
downloadQt-128828d0fc00dd75f155bed1eaaea287a9de15f1.zip
Qt-128828d0fc00dd75f155bed1eaaea287a9de15f1.tar.gz
Qt-128828d0fc00dd75f155bed1eaaea287a9de15f1.tar.bz2
Merge branch 'kinetic-declarativeui' of git@scm.dev.nokia.troll.no:qt/kinetic into kinetic-declarativeui
Diffstat (limited to 'src/declarative/qml/qmlbindingoptimizations.cpp')
-rw-r--r--src/declarative/qml/qmlbindingoptimizations.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/declarative/qml/qmlbindingoptimizations.cpp b/src/declarative/qml/qmlbindingoptimizations.cpp
index e1f4a90..e4ca358 100644
--- a/src/declarative/qml/qmlbindingoptimizations.cpp
+++ b/src/declarative/qml/qmlbindingoptimizations.cpp
@@ -64,6 +64,11 @@ QmlBinding_Id::QmlBinding_Id(QObject *object, int propertyIdx,
QmlAbstractExpression::setContext(context);
}
+QmlBinding_Id::~QmlBinding_Id()
+{
+ removeFromContext();
+}
+
void QmlBinding_Id::setEnabled(bool e)
{
if (e) {
@@ -103,7 +108,7 @@ void QmlBinding_Id::update()
}
}
-void QmlBinding_Id::reset()
+void QmlBinding_Id::removeFromContext()
{
if (m_prev) {
*m_prev = m_next;
@@ -111,6 +116,11 @@ void QmlBinding_Id::reset()
m_next = 0;
m_prev = 0;
}
+}
+
+void QmlBinding_Id::reset()
+{
+ removeFromContext();
QObject *o = 0;
void *a[] = { &o, 0 };