diff options
author | Lars Knoll <lars.knoll@qt.io> | 2018-05-29 16:30:10 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2018-06-04 13:02:15 +0000 |
commit | ab5485ccfcb44042be8b1280f4b0e57fae52893a (patch) | |
tree | bdec2a40add9c2ffd8ed372401d51356dba9f767 /src/qml/jsruntime/qv4typedarray.cpp | |
parent | adb58fe81e2f79d5ba10eda3ed6187349fda40de (diff) |
TypedArray.prototype[Symbol.iterator] and .values are the same function
Those two properties are supposed to point to the same function object
according to ES7 spec.
Change-Id: Ic0917aa28836ad8d665d2177f2f5c2a8d8ad3f6d
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/jsruntime/qv4typedarray.cpp')
-rw-r--r-- | src/qml/jsruntime/qv4typedarray.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/qml/jsruntime/qv4typedarray.cpp b/src/qml/jsruntime/qv4typedarray.cpp index 2fa4a9ecaf..3eadfe04a6 100644 --- a/src/qml/jsruntime/qv4typedarray.cpp +++ b/src/qml/jsruntime/qv4typedarray.cpp @@ -655,9 +655,14 @@ void IntrinsicTypedArrayPrototype::init(ExecutionEngine *engine, IntrinsicTypedA defineDefaultProperty(QStringLiteral("entries"), method_entries, 0); defineDefaultProperty(QStringLiteral("keys"), method_keys, 0); - defineDefaultProperty(QStringLiteral("values"), method_values, 0); defineDefaultProperty(QStringLiteral("set"), method_set, 1); defineDefaultProperty(QStringLiteral("subarray"), method_subarray, 0); - defineDefaultProperty(engine->symbol_iterator(), method_values, 0); + + Scope scope(engine); + ScopedString valuesString(scope, engine->newIdentifier(QStringLiteral("values"))); + ScopedObject values(scope, FunctionObject::createBuiltinFunction(engine, valuesString, method_values, 0)); + defineDefaultProperty(QStringLiteral("values"), values); + defineDefaultProperty(engine->symbol_iterator(), values); + defineAccessorProperty(engine->symbol_toStringTag(), method_get_toStringTag, nullptr); } |