From 84515448e8d137a6c5218c27bfee84d5241cb327 Mon Sep 17 00:00:00 2001 From: Thomas Hartmann <Thomas.Hartmann@nokia.com> Date: Tue, 23 Nov 2010 12:14:48 +0100 Subject: [PATCH] QmlDesigner.rewriter: crash fix for Flipable Removing a property from a Flipabke back or front property resulted in a crash, because the offset of UiObjectBinding was not handled correctly. The left hand side of the binding is not part of the node anymore. Reviewed-by: Kai Koehne --- .../designercore/filemanager/removepropertyvisitor.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/plugins/qmldesigner/designercore/filemanager/removepropertyvisitor.cpp b/src/plugins/qmldesigner/designercore/filemanager/removepropertyvisitor.cpp index 136bf85d4c5..449b01d1575 100644 --- a/src/plugins/qmldesigner/designercore/filemanager/removepropertyvisitor.cpp +++ b/src/plugins/qmldesigner/designercore/filemanager/removepropertyvisitor.cpp @@ -48,6 +48,13 @@ RemovePropertyVisitor::RemovePropertyVisitor(QmlDesigner::TextModifier &modifier bool RemovePropertyVisitor::visit(QmlJS::AST::UiObjectBinding *ast) { if (ast->firstSourceLocation().offset == parentLocation) { + //this condition is wrong for the UiObjectBinding case, but we keep it + //since we are paranoid until the release is done. + // FIXME: change this to use the QmlJS::Rewriter class + removeFrom(ast->initializer); + } + + if (ast->qualifiedTypeNameId && ast->qualifiedTypeNameId->identifierToken.offset == parentLocation) { // FIXME: change this to use the QmlJS::Rewriter class removeFrom(ast->initializer); } -- GitLab