From ffb557ff17d45684aac159762ae4bcc8a04ba573 Mon Sep 17 00:00:00 2001 From: Carl Schwan Date: Mon, 15 Apr 2024 15:41:23 +0200 Subject: Fix crash in QQuickItem::mapToItem MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit item->window() can be null and this will cause a crash when this happen. This seems to be a recent regression as with Qt 6.6 I never saw this crash and now I see it semi regularly in various applications Change-Id: I2056073bb72df81de8e8a6cbd48aed0478d91121 Reviewed-by: Tor Arne Vestbø --- src/quick/items/qquickitem.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/quick/items/qquickitem.cpp b/src/quick/items/qquickitem.cpp index 5e92403dc2..01f15d2490 100644 --- a/src/quick/items/qquickitem.cpp +++ b/src/quick/items/qquickitem.cpp @@ -8750,8 +8750,9 @@ QPointF QQuickItem::mapToItem(const QQuickItem *item, const QPointF &point) cons { QPointF p = mapToScene(point); if (item) { - if (item->window() != window()) - p = item->window()->mapFromGlobal(window()->mapToGlobal(p)); + const QQuickWindow *itemWindow = item->window(); + if (itemWindow != nullptr && itemWindow != window()) + p = itemWindow->mapFromGlobal(window()->mapToGlobal(p)); p = item->mapFromScene(p); } -- cgit v1.2.3