aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime/qv4context.cpp
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@digia.com>2014-12-02 12:46:20 +0100
committerSimon Hausmann <simon.hausmann@digia.com>2014-12-20 10:07:39 +0100
commita8efa705ac21ec020474b9dcc8ab454ddedad037 (patch)
treebcd2ac0ddee28fb48cde2ccba13467864db33711 /src/qml/jsruntime/qv4context.cpp
parentf2253e6b59e3e8a5d8524b766c03ce79389a4870 (diff)
Fix Context::getPropertyAndBase to use Heap based objects
Change-Id: I4f885a8af5e963445959871b7f26f3bcb3dfa654 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/jsruntime/qv4context.cpp')
-rw-r--r--src/qml/jsruntime/qv4context.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/qml/jsruntime/qv4context.cpp b/src/qml/jsruntime/qv4context.cpp
index 3c36612222..001a586050 100644
--- a/src/qml/jsruntime/qv4context.cpp
+++ b/src/qml/jsruntime/qv4context.cpp
@@ -404,11 +404,11 @@ ReturnedValue ExecutionContext::getProperty(String *name)
return engine()->throwReferenceError(n);
}
-ReturnedValue ExecutionContext::getPropertyAndBase(String *name, Object *&base)
+ReturnedValue ExecutionContext::getPropertyAndBase(String *name, Heap::Object **base)
{
Scope scope(this);
ScopedValue v(scope);
- base = (Object *)0;
+ *base = (Heap::Object *)0;
name->makeIdentifier();
if (name->equals(d()->engine->id_this))
@@ -424,7 +424,7 @@ ReturnedValue ExecutionContext::getPropertyAndBase(String *name, Object *&base)
bool hasProperty = false;
v = w->get(name, &hasProperty);
if (hasProperty) {
- base = w;
+ *base = w->d();
return v.asReturnedValue();
}
continue;
@@ -454,7 +454,7 @@ ReturnedValue ExecutionContext::getPropertyAndBase(String *name, Object *&base)
v = activation->get(name, &hasProperty);
if (hasProperty) {
if (ctx->d()->type == Heap::ExecutionContext::Type_QmlContext)
- base = activation;
+ *base = activation->d();
return v.asReturnedValue();
}
}