aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/qml/qjsengine/tst_qjsengine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/qml/qjsengine/tst_qjsengine.cpp')
-rw-r--r--tests/auto/qml/qjsengine/tst_qjsengine.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/auto/qml/qjsengine/tst_qjsengine.cpp b/tests/auto/qml/qjsengine/tst_qjsengine.cpp
index 81018aa68e..2c7dde1b8d 100644
--- a/tests/auto/qml/qjsengine/tst_qjsengine.cpp
+++ b/tests/auto/qml/qjsengine/tst_qjsengine.cpp
@@ -194,6 +194,8 @@ private slots:
void withNoContext();
void holeInPropertyData();
+ void basicBlockMergeAfterLoopPeeling();
+
signals:
void testSignal();
};
@@ -4059,6 +4061,22 @@ void tst_QJSEngine::holeInPropertyData()
QVERIFY(ok.toBool());
}
+void tst_QJSEngine::basicBlockMergeAfterLoopPeeling()
+{
+ QJSEngine engine;
+ QJSValue ok = engine.evaluate(
+ "function crashMe() {\n"
+ " var seen = false;\n"
+ " while (globalVar) {\n"
+ " if (seen)\n"
+ " return;\n"
+ " seen = true;\n"
+ " }\n"
+ "}\n");
+ QVERIFY(!ok.isCallable());
+
+}
+
QTEST_MAIN(tst_QJSEngine)
#include "tst_qjsengine.moc"