From 725118563976bd5abd1c368b90579dbf44462323 Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Wed, 4 Dec 2013 16:03:59 +0100 Subject: Fix a crash in JSON.parse Properly set members that are actually array indices and don't crash when trying to set those. Task-number: QTBUG-35383 Change-Id: I04d4b65c27e97a2e9db19541ed46ee1bb202f780 Reviewed-by: Simon Hausmann Reviewed-by: Milian Wolff --- tests/auto/qml/qjsengine/tst_qjsengine.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'tests/auto/qml/qjsengine/tst_qjsengine.cpp') diff --git a/tests/auto/qml/qjsengine/tst_qjsengine.cpp b/tests/auto/qml/qjsengine/tst_qjsengine.cpp index 39086d75ac..726f8636b6 100644 --- a/tests/auto/qml/qjsengine/tst_qjsengine.cpp +++ b/tests/auto/qml/qjsengine/tst_qjsengine.cpp @@ -134,6 +134,7 @@ private slots: void reentrancy_Array(); void reentrancy_objectCreation(); void jsIncDecNonObjectProperty(); + void JSONparse(); void qRegExpInport_data(); void qRegExpInport(); @@ -2500,6 +2501,13 @@ void tst_QJSEngine::jsIncDecNonObjectProperty() } } +void tst_QJSEngine::JSONparse() +{ + QJSEngine eng; + QJSValue ret = eng.evaluate("var json=\"{\\\"1\\\": null}\"; JSON.parse(json);"); + QVERIFY(ret.isObject()); +} + static QRegExp minimal(QRegExp r) { r.setMinimal(true); return r; } void tst_QJSEngine::qRegExpInport_data() -- cgit v1.2.3