From 885e4af1f4ba3f047c3d932a1a780ddbba481170 Mon Sep 17 00:00:00 2001 From: Ulf Hermann Date: Fri, 15 Feb 2019 14:04:54 +0100 Subject: QML: Don't crash the parser on certain kinds of bad input Fixes: QTBUG-72734 Change-Id: I92146ec517c6a26a67e13830618e137f2a3021c2 Reviewed-by: Simon Hausmann --- src/qml/parser/qqmljs.g | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/qml/parser') diff --git a/src/qml/parser/qqmljs.g b/src/qml/parser/qqmljs.g index 860a4e999e..b86dba6daa 100644 --- a/src/qml/parser/qqmljs.g +++ b/src/qml/parser/qqmljs.g @@ -3963,8 +3963,12 @@ ClassElementList: ClassElement; ClassElementList: ClassElementList ClassElement; /. case $rule_number: { - if (sym(2).Node) - sym(1).ClassElementList = sym(1).ClassElementList->append(sym(2).ClassElementList); + if (sym(1).Node) { + if (sym(2).Node) + sym(1).ClassElementList = sym(1).ClassElementList->append(sym(2).ClassElementList); + } else if (sym(2).Node) { + sym(1).Node = sym(2).Node; + } } break; ./ -- cgit v1.2.3