From 3aec095e50a02ea62b319e52b0bf4cc9f0f81788 Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Mon, 15 Apr 2024 15:02:10 +0200 Subject: [PATCH] QmlDesigner: Fix crash Change-Id: I0b2080c19868efd92427f47bd344412e6460e126 Reviewed-by: Tim Jenssen Reviewed-by: Qt CI Patch Build Bot --- .../components/propertyeditor/qmlmodelnodeproxy.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/plugins/qmldesigner/components/propertyeditor/qmlmodelnodeproxy.cpp b/src/plugins/qmldesigner/components/propertyeditor/qmlmodelnodeproxy.cpp index b16e7c258f6..3daa6c4ecce 100644 --- a/src/plugins/qmldesigner/components/propertyeditor/qmlmodelnodeproxy.cpp +++ b/src/plugins/qmldesigner/components/propertyeditor/qmlmodelnodeproxy.cpp @@ -246,7 +246,7 @@ void QmlModelNodeProxy::handleInstancePropertyChanged(const ModelNode &modelNode const QmlObjectNode qmlObjectNode(modelNode); for (const auto &item : qAsConst(m_subselection)) { - if (item->isRelevantModelNode(modelNode)) { + if (item && item->isRelevantModelNode(modelNode)) { if (!modelNode.hasProperty(propertyName) || modelNode.property(propertyName).isBindingProperty()) { item->setValueFromModel(propertyName, qmlObjectNode.instanceValue(propertyName)); @@ -260,7 +260,7 @@ void QmlModelNodeProxy::handleInstancePropertyChanged(const ModelNode &modelNode void QmlModelNodeProxy::handleBindingPropertyChanged(const BindingProperty &property) { for (const auto &item : qAsConst(m_subselection)) { - if (item->isRelevantModelNode(property.parentModelNode())) { + if (item && item->isRelevantModelNode(property.parentModelNode())) { QmlObjectNode objectNode(item->modelNode()); if (objectNode.modelNode().property(property.name()).isBindingProperty()) item->setValueFromModel(property.name(), objectNode.instanceValue(property.name())); @@ -273,7 +273,7 @@ void QmlModelNodeProxy::handleBindingPropertyChanged(const BindingProperty &prop void QmlModelNodeProxy::handleVariantPropertyChanged(const VariantProperty &property) { for (const auto &item : qAsConst(m_subselection)) { - if (item->isRelevantModelNode(property.parentModelNode())) { + if (item && item->isRelevantModelNode(property.parentModelNode())) { QmlObjectNode objectNode(item->modelNode()); if (objectNode.modelNode().property(property.name()).isBindingProperty()) item->setValueFromModel(property.name(), objectNode.instanceValue(property.name())); @@ -286,7 +286,7 @@ void QmlModelNodeProxy::handleVariantPropertyChanged(const VariantProperty &prop void QmlModelNodeProxy::handlePropertiesRemoved(const AbstractProperty &property) { for (const auto &item : qAsConst(m_subselection)) { - if (item->isRelevantModelNode(property.parentModelNode())) { + if (item && item->isRelevantModelNode(property.parentModelNode())) { QmlObjectNode objectNode(item->modelNode()); item->resetValue(property.name()); item->setValueFromModel(property.name(), objectNode.instanceValue(property.name()));