summaryrefslogtreecommitdiffstats
path: root/src/declarative/qml/qmlvme.cpp
diff options
context:
space:
mode:
authorAaron Kennedy <aaron.kennedy@nokia.com>2009-12-18 03:34:53 (GMT)
committerAaron Kennedy <aaron.kennedy@nokia.com>2009-12-18 03:34:53 (GMT)
commit32bcf89a330d422b0b99ac9090b104016418d07f (patch)
tree6ded1dbdcd8d04413d566add2332bb91e33733d9 /src/declarative/qml/qmlvme.cpp
parent3ed9d92ac183eb4415523d95c9eef4454c473c53 (diff)
downloadQt-32bcf89a330d422b0b99ac9090b104016418d07f.zip
Qt-32bcf89a330d422b0b99ac9090b104016418d07f.tar.gz
Qt-32bcf89a330d422b0b99ac9090b104016418d07f.tar.bz2
Support binding optimizer and deferred properties
Diffstat (limited to 'src/declarative/qml/qmlvme.cpp')
-rw-r--r--src/declarative/qml/qmlvme.cpp11
1 files changed, 2 insertions, 9 deletions
diff --git a/src/declarative/qml/qmlvme.cpp b/src/declarative/qml/qmlvme.cpp
index 58cd92f..f1abd7d 100644
--- a/src/declarative/qml/qmlvme.cpp
+++ b/src/declarative/qml/qmlvme.cpp
@@ -160,8 +160,6 @@ QObject *QmlVME::run(QmlVMEStack<QObject *> &stack, QmlContext *ctxt,
int status = -1; //for dbus
QmlMetaProperty::WriteFlags flags = QmlMetaProperty::BypassInterceptor;
- QmlOptimizedBindings *optimizedBindings = 0;
-
for (int ii = start; !isError() && ii < (start + count); ++ii) {
const QmlInstruction &instr = comp->bytecode.at(ii);
@@ -175,7 +173,7 @@ QObject *QmlVME::run(QmlVMEStack<QObject *> &stack, QmlContext *ctxt,
if (instr.init.contextCache != -1)
cp->setIdPropertyData(comp->contextCaches.at(instr.init.contextCache));
if (instr.init.compiledBinding != -1)
- optimizedBindings = new QmlOptimizedBindings(datas.at(instr.init.compiledBinding).constData(), ctxt);
+ cp->optimizedBindings = new QmlOptimizedBindings(datas.at(instr.init.compiledBinding).constData(), ctxt);
}
break;
@@ -622,7 +620,7 @@ QObject *QmlVME::run(QmlVMEStack<QObject *> &stack, QmlContext *ctxt,
break;
QmlAbstractBinding *binding =
- optimizedBindings->configBinding(instr.assignBinding.value, target, scope, property);
+ cp->optimizedBindings->configBinding(instr.assignBinding.value, target, scope, property);
bindValues.append(binding);
binding->m_mePtr = &bindValues.values[bindValues.count - 1];
binding->addToObject(target);
@@ -894,11 +892,6 @@ QObject *QmlVME::run(QmlVMEStack<QObject *> &stack, QmlContext *ctxt,
}
}
- if (optimizedBindings) {
- optimizedBindings->release();
- optimizedBindings = 0;
- }
-
if (isError()) {
if (!stack.isEmpty()) {
delete stack.at(0);