From ae30e3073c1cf381b0ea04f0369fd62916a57d08 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Tue, 3 May 2022 15:12:40 +0300 Subject: [PATCH] QmlDesigner: Do not assume QmlBuildSystem is current build system It's possible to open qml files for visual editing from qmake/cmake based projects as well. Fixes: QDS-6836 Change-Id: I15840dbe0f67711b162f7f7f492f7ab813ea7fca Reviewed-by: Mahmoud Badri Reviewed-by: Reviewed-by: Thomas Hartmann --- .../qmldesigner/designercore/instances/nodeinstanceview.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp b/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp index 8dbe236ca0a..11af3586799 100644 --- a/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp +++ b/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp @@ -2025,6 +2025,8 @@ void NodeInstanceView::updateQsbPathToFilterMap() m_qsbPathToFilterMap.clear(); if (m_currentTarget && !m_qsbPath.isEmpty()) { const auto bs = qobject_cast(m_currentTarget->buildSystem()); + if (!bs) + return; const QStringList shaderToolFiles = bs->shaderToolFiles(); #ifndef QMLDESIGNER_TEST @@ -2056,6 +2058,9 @@ void NodeInstanceView::handleShaderChanges() return; const auto bs = qobject_cast(m_currentTarget->buildSystem()); + if (!bs) + return; + QStringList baseArgs = bs->shaderToolArgs(); if (baseArgs.isEmpty()) return;