diff options
author | Lars Knoll <lars.knoll@qt.io> | 2018-08-18 15:26:45 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2018-08-23 19:18:15 +0000 |
commit | f15cc9f1df8e17f049c111e3147d6c63c07eb756 (patch) | |
tree | ae4daaa5e1cde31c0e412b84e9521f3745911657 /src/qml/jsruntime/qv4typedarray.cpp | |
parent | 6e2fc84646987135c96755fbe1c2af20fc722e3d (diff) |
Implement IsConstructor for Function objects
Use the jsConstruct member in the function object for this
and set it to a nullptr for methods that are not a constructor.
Change-Id: I63d2971b23b2596a8e3b6d2781f0d9ed3208693b
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/jsruntime/qv4typedarray.cpp')
-rw-r--r-- | src/qml/jsruntime/qv4typedarray.cpp | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/src/qml/jsruntime/qv4typedarray.cpp b/src/qml/jsruntime/qv4typedarray.cpp index 54c3b9cfc1..456a577b52 100644 --- a/src/qml/jsruntime/qv4typedarray.cpp +++ b/src/qml/jsruntime/qv4typedarray.cpp @@ -1440,16 +1440,6 @@ ReturnedValue IntrinsicTypedArrayPrototype::method_get_toStringTag(const Functio return a->engine()->newString(QString::fromLatin1(a->d()->type->name))->asReturnedValue(); } -ReturnedValue IntrinsicTypedArrayCtor::virtualCallAsConstructor(const FunctionObject *f, const Value *, int, const Value *) -{ - return f->engine()->throwTypeError(); -} - -ReturnedValue IntrinsicTypedArrayCtor::virtualCall(const FunctionObject *f, const Value *, const Value *, int) -{ - return f->engine()->throwTypeError(); -} - static bool validateTypedArray(const Object *o) { const TypedArray *a = o->as<TypedArray>(); @@ -1466,7 +1456,7 @@ ReturnedValue IntrinsicTypedArrayCtor::method_of(const FunctionObject *f, const int len = argc; const Value *items = argv; const FunctionObject *C = thisObject->as<FunctionObject>(); - if (!C) + if (!C || !C->isConstructor()) return scope.engine->throwTypeError(); Value lenValue = Primitive::fromInt32(len); |