diff options
author | Lars Knoll <lars.knoll@digia.com> | 2013-09-26 12:08:03 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-09-28 13:33:50 +0200 |
commit | c0e0e9ba2c1dd8c3a2a590849ff244987730d1b2 (patch) | |
tree | 62fae7b90d95c202e39b6f40059151f3e29e82c6 /src | |
parent | d2e2a5b59c617e6cf7236cf36e9c20fe9ea36fdb (diff) |
Fix API for evalCall()
Change-Id: Ib80b18348e18eb93044a73358f0c4e266b988f63
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/qml/jsruntime/qv4globalobject.cpp | 12 | ||||
-rw-r--r-- | src/qml/jsruntime/qv4globalobject_p.h | 2 | ||||
-rw-r--r-- | src/qml/jsruntime/qv4runtime.cpp | 4 |
3 files changed, 9 insertions, 9 deletions
diff --git a/src/qml/jsruntime/qv4globalobject.cpp b/src/qml/jsruntime/qv4globalobject.cpp index 856b85cc1c..cbf6ddc1c6 100644 --- a/src/qml/jsruntime/qv4globalobject.cpp +++ b/src/qml/jsruntime/qv4globalobject.cpp @@ -354,9 +354,9 @@ EvalFunction::EvalFunction(ExecutionContext *scope) defineReadonlyProperty(scope->engine->id_length, Primitive::fromInt32(1)); } -ReturnedValue EvalFunction::evalCall(Value /*thisObject*/, Value *args, int argc, bool directCall) +ReturnedValue EvalFunction::evalCall(CallData *callData, bool directCall) { - if (argc < 1) + if (callData->argc < 1) return Encode::undefined(); ExecutionContext *parentContext = engine()->current; @@ -370,10 +370,10 @@ ReturnedValue EvalFunction::evalCall(Value /*thisObject*/, Value *args, int argc ctx = engine->pushGlobalContext(); } - if (!args[0].isString()) - return args[0].asReturnedValue(); + if (!callData->args[0].isString()) + return callData->args[0].asReturnedValue(); - const QString code = args[0].stringValue()->toQString(); + const QString code = callData->args[0].stringValue()->toQString(); bool inheritContext = !ctx->strictMode; Script script(ctx, code, QString("eval code")); @@ -436,7 +436,7 @@ ReturnedValue EvalFunction::call(Managed *that, CallData *callData) { // indirect call // ### const_cast - return static_cast<EvalFunction *>(that)->evalCall(callData->thisObject, const_cast<Value *>(static_cast<const Value *>(callData->args)), callData->argc, false); + return static_cast<EvalFunction *>(that)->evalCall(callData, false); } diff --git a/src/qml/jsruntime/qv4globalobject_p.h b/src/qml/jsruntime/qv4globalobject_p.h index f49c8ebbb8..e6a3b0d773 100644 --- a/src/qml/jsruntime/qv4globalobject_p.h +++ b/src/qml/jsruntime/qv4globalobject_p.h @@ -53,7 +53,7 @@ struct Q_QML_EXPORT EvalFunction : FunctionObject Q_MANAGED EvalFunction(ExecutionContext *scope); - ReturnedValue evalCall(Value thisObject, Value *args, int argc, bool directCall); + ReturnedValue evalCall(CallData *callData, bool directCall); using Managed::construct; static ReturnedValue call(Managed *that, CallData *callData); diff --git a/src/qml/jsruntime/qv4runtime.cpp b/src/qml/jsruntime/qv4runtime.cpp index 8d1171a18b..cb059be3a8 100644 --- a/src/qml/jsruntime/qv4runtime.cpp +++ b/src/qml/jsruntime/qv4runtime.cpp @@ -950,7 +950,7 @@ ReturnedValue __qmljs_call_global_lookup(ExecutionContext *context, uint index, context->throwTypeError(); if (o.getPointer() == context->engine->evalFunction && l->name->isEqualTo(context->engine->id_eval)) - return static_cast<EvalFunction *>(o.getPointer())->evalCall(callData->thisObject, callData->args, callData->argc, true); + return static_cast<EvalFunction *>(o.getPointer())->evalCall(callData, true); return o->call(callData); } @@ -976,7 +976,7 @@ ReturnedValue __qmljs_call_activation_property(ExecutionContext *context, const } if (o == context->engine->evalFunction && name->isEqualTo(context->engine->id_eval)) { - return static_cast<EvalFunction *>(o)->evalCall(callData->thisObject, callData->args, callData->argc, true); + return static_cast<EvalFunction *>(o)->evalCall(callData, true); } return o->call(callData); |