From 640e7107c57f9a581ec84fc3b9faeacec05a5e0b Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Wed, 11 Aug 2021 15:27:09 +0200 Subject: [PATCH] QmlDesigner: Fix tests after parser update Since the last parser update the source location is valid even if there is no semicolon. The length is 0 in this case, though. Change-Id: Ie2ff425b54ef39d9db66119236d5e8f56677b748 Reviewed-by: Vikas Pachdha --- .../designercore/filemanager/addpropertyvisitor.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/plugins/qmldesigner/designercore/filemanager/addpropertyvisitor.cpp b/src/plugins/qmldesigner/designercore/filemanager/addpropertyvisitor.cpp index 3c04d341bbd..47a7af5fc3b 100644 --- a/src/plugins/qmldesigner/designercore/filemanager/addpropertyvisitor.cpp +++ b/src/plugins/qmldesigner/designercore/filemanager/addpropertyvisitor.cpp @@ -99,10 +99,12 @@ void AddPropertyVisitor::addInMembers(QmlJS::AST::UiObjectInitializer *initializ // Find out if the previous members ends with semicolon. if (auto member = QmlJS::AST::cast(insertAfter->member)) { - if (auto stmt = QmlJS::AST::cast(member->statement)) - previousMemberSemicolon = stmt->semicolonToken.isValid(); - else + if (auto stmt = QmlJS::AST::cast(member->statement)) { + previousMemberSemicolon = stmt->semicolonToken.isValid() + && stmt->semicolonToken.length > 0; + } else { previousMemberSemicolon = endOfPreviousMember.isValid(); + } } else { previousMemberSemicolon = endOfPreviousMember.isValid(); }