diff options
author | Lars Knoll <lars.knoll@digia.com> | 2013-06-21 10:39:03 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@digia.com> | 2013-06-21 10:44:29 +0200 |
commit | eec8fbd98fe46c7f016befc91cc1b13c84fa672b (patch) | |
tree | cc6cb8798f9c224ae8aa8a477fc7006fe4b4b518 | |
parent | 343978ce543b4b901bb009f0c5ebabb7563fe98b (diff) |
Fix scope chain for eval in strict mode
Change-Id: Ie00046f98a126cd46cd79758a78be1d0e1d17c61
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
-rw-r--r-- | src/qml/qml/v4/qv4globalobject.cpp | 4 | ||||
-rw-r--r-- | tests/manual/v4/TestExpectations | 2 |
2 files changed, 2 insertions, 4 deletions
diff --git a/src/qml/qml/v4/qv4globalobject.cpp b/src/qml/qml/v4/qv4globalobject.cpp index 520fab6c96..0d4da29e2a 100644 --- a/src/qml/qml/v4/qv4globalobject.cpp +++ b/src/qml/qml/v4/qv4globalobject.cpp @@ -387,8 +387,8 @@ Value EvalFunction::evalCall(ExecutionContext *parentContext, Value /*thisObject needsActivation = function->needsActivation(); if (strictMode) { - CallContext *k = ctx->engine->newCallContext(this, ctx->thisObject, 0, 0); - ctx = k; + FunctionObject *e = engine->newScriptFunction(ctx, function); + return e->call(ctx->thisObject, 0, 0); } ExecutionContext::EvalCode evalCode; diff --git a/tests/manual/v4/TestExpectations b/tests/manual/v4/TestExpectations index b602e0816b..17cdc3b3c3 100644 --- a/tests/manual/v4/TestExpectations +++ b/tests/manual/v4/TestExpectations @@ -5,8 +5,6 @@ 10.4.3-1-104 failing 10.4.3-1-106 failing -10.4.3-1-63-s failing -10.4.3-1-82-s failing 11.2.3-3_3 failing S11.8.6_A5_T2 failing S13_A15_T4 failing |