aboutsummaryrefslogtreecommitdiffstats
path: root/src/declarative/qml/qdeclarativecontext.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/declarative/qml/qdeclarativecontext.cpp')
-rw-r--r--src/declarative/qml/qdeclarativecontext.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/declarative/qml/qdeclarativecontext.cpp b/src/declarative/qml/qdeclarativecontext.cpp
index 3f838d5fd1..3e0db16346 100644
--- a/src/declarative/qml/qdeclarativecontext.cpp
+++ b/src/declarative/qml/qdeclarativecontext.cpp
@@ -579,10 +579,11 @@ void QDeclarativeContextData::clearContext()
while (expression) {
QDeclarativeAbstractExpression *nextExpression = expression->m_nextExpression;
- expression->m_context = 0;
expression->m_prevExpression = 0;
expression->m_nextExpression = 0;
+ expression->setContext(0);
+
expression = nextExpression;
}
expressions = 0;
@@ -656,7 +657,7 @@ void QDeclarativeContextData::setParent(QDeclarativeContextData *p, bool parentT
void QDeclarativeContextData::refreshExpressionsRecursive(QDeclarativeAbstractExpression *expression)
{
- QDeleteWatcher w(expression);
+ QDeclarativeAbstractExpression::DeleteWatcher w(expression);
if (expression->m_nextExpression)
refreshExpressionsRecursive(expression->m_nextExpression);