aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@qt.io>2018-05-23 22:09:30 +0200
committerLars Knoll <lars.knoll@qt.io>2018-05-24 08:09:29 +0000
commit4613068e9fc4a03048de8bf481c34e7f0aeb0299 (patch)
tree6ee087b6f94ddc32ccc1b62c99ddb6a277d454bf
parentd893f611053f882e0c45b90e4d80fbacebd45d73 (diff)
Fix JSON[Symbol.toStringTag]
Change-Id: I33c29cc4d023be4ee996a4dc1fb4356da59e60d6 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
-rw-r--r--src/qml/jsruntime/qv4jsonobject.cpp3
-rw-r--r--tests/auto/qml/ecmascripttests/TestExpectations1
2 files changed, 3 insertions, 1 deletions
diff --git a/src/qml/jsruntime/qv4jsonobject.cpp b/src/qml/jsruntime/qv4jsonobject.cpp
index 7d2bb18ead..75a9bf4111 100644
--- a/src/qml/jsruntime/qv4jsonobject.cpp
+++ b/src/qml/jsruntime/qv4jsonobject.cpp
@@ -47,6 +47,7 @@
#include <qv4variantobject_p.h>
#include "qv4string_p.h"
#include "qv4jscall_p.h"
+#include <qv4symbol_p.h>
#include <qstack.h>
#include <qstringlist.h>
@@ -881,6 +882,8 @@ void Heap::JsonObject::init()
o->defineDefaultProperty(QStringLiteral("parse"), QV4::JsonObject::method_parse, 2);
o->defineDefaultProperty(QStringLiteral("stringify"), QV4::JsonObject::method_stringify, 3);
+ ScopedString json(scope, scope.engine->newString(QStringLiteral("JSON")));
+ o->defineReadonlyConfigurableProperty(scope.engine->symbol_toStringTag(), json);
}
diff --git a/tests/auto/qml/ecmascripttests/TestExpectations b/tests/auto/qml/ecmascripttests/TestExpectations
index 826810a1cb..08319f3407 100644
--- a/tests/auto/qml/ecmascripttests/TestExpectations
+++ b/tests/auto/qml/ecmascripttests/TestExpectations
@@ -626,7 +626,6 @@ built-ins/Function/prototype/toString/symbol-named-builtins.js fails
built-ins/Function/prototype/toString/unicode.js fails
built-ins/GeneratorFunction/proto-from-ctor-realm.js fails
built-ins/GeneratorPrototype/throw/try-finally-nested-try-catch-within-catch.js fails
-built-ins/JSON/Symbol.toStringTag.js fails
built-ins/JSON/parse/revived-proxy-revoked.js fails
built-ins/JSON/parse/revived-proxy.js fails
built-ins/JSON/parse/reviver-array-define-prop-err.js fails