aboutsummaryrefslogtreecommitdiffstats
path: root/src/declarative/qml/v8/qv8bindings.cpp
diff options
context:
space:
mode:
authorAaron Kennedy <aaron.kennedy@nokia.com>2011-06-20 14:47:44 +1000
committerAaron Kennedy <aaron.kennedy@nokia.com>2011-06-20 14:47:44 +1000
commit4266185d161be64926f43ed70b6ed2090fca17f1 (patch)
treea36f2b55c1669467e77c977c5c507bf678801b3e /src/declarative/qml/v8/qv8bindings.cpp
parent1ccfc5a5760bc85712e61546b772cede54ca21cb (diff)
Reenable shared bindings
Now with extra "supports nested components" goodness.
Diffstat (limited to 'src/declarative/qml/v8/qv8bindings.cpp')
-rw-r--r--src/declarative/qml/v8/qv8bindings.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/declarative/qml/v8/qv8bindings.cpp b/src/declarative/qml/v8/qv8bindings.cpp
index 424d06f083..49cc00ca68 100644
--- a/src/declarative/qml/v8/qv8bindings.cpp
+++ b/src/declarative/qml/v8/qv8bindings.cpp
@@ -162,7 +162,7 @@ void QV8BindingsPrivate::Binding::destroy()
parent->q_func()->release();
}
-QV8Bindings::QV8Bindings(const QString &program, int line,
+QV8Bindings::QV8Bindings(const QString &program, int index, int line,
QDeclarativeCompiledData *compiled,
QDeclarativeContextData *context)
: QObject(*(new QV8BindingsPrivate))
@@ -171,7 +171,7 @@ QV8Bindings::QV8Bindings(const QString &program, int line,
QV8Engine *engine = QDeclarativeEnginePrivate::getV8Engine(context->engine);
- if (compiled->v8bindings.IsEmpty()) {
+ if (compiled->v8bindings[index].IsEmpty()) {
v8::HandleScope handle_scope;
v8::Context::Scope scope(engine->context());
@@ -179,11 +179,11 @@ QV8Bindings::QV8Bindings(const QString &program, int line,
v8::Local<v8::Value> result = script->Run(engine->contextWrapper()->sharedContext());
if (result->IsArray())
- compiled->v8bindings = qPersistentNew(v8::Local<v8::Array>::Cast(result));
+ compiled->v8bindings[index] = qPersistentNew(v8::Local<v8::Array>::Cast(result));
}
d->url = compiled->url;
- d->functions = qPersistentNew(compiled->v8bindings);
+ d->functions = qPersistentNew(compiled->v8bindings[index]);
d->bindingsCount = d->functions->Length();
d->bindings = new QV8BindingsPrivate::Binding[d->bindingsCount];