From b3238d57361bde667ea890b60a04c075eec2e952 Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Tue, 14 Mar 2017 15:59:17 +0100 Subject: [PATCH] QmlDesigner: Fix nodeAtTextCursorPositionRekursive() If the length is -1 then the document is invalid and we should return an invalid model node. Change-Id: Id2a329a16617f862a518a3c1f00f9078697d72d8 Reviewed-by: Tim Jenssen --- src/plugins/qmldesigner/designercore/model/rewriterview.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/plugins/qmldesigner/designercore/model/rewriterview.cpp b/src/plugins/qmldesigner/designercore/model/rewriterview.cpp index 4c58b573f48..1eff8b446fa 100644 --- a/src/plugins/qmldesigner/designercore/model/rewriterview.cpp +++ b/src/plugins/qmldesigner/designercore/model/rewriterview.cpp @@ -582,6 +582,10 @@ ModelNode RewriterView::nodeAtTextCursorPositionRekursive(const ModelNode &root, const int nodeTextLength = nodeLength(node); const int nodeTextOffset = nodeOffset(node); + + if (nodeTextLength < 0) + return ModelNode(); + if (isInNodeDefinition(nodeTextOffset, nodeTextLength, cursorPosition)) return node;