From ee09375bba0d81be33c885261c9694fc2c2d726e Mon Sep 17 00:00:00 2001 From: Wang Yu Date: Fri, 16 Aug 2024 09:11:39 +0800 Subject: [PATCH] Fix Windows drag and drop crash When QGuiApplication::primaryScreen() is empty, dragging it causes a crash Change-Id: I6c5e48be44db90acec5126957bee60b8514b10a7 Pick-to: 6.7 6.5 Reviewed-by: Oliver Wolff (cherry picked from commit f8e7dfe93ab9622f77aade23707cd6f0b9386379) Reviewed-by: Qt Cherry-pick Bot --- src/plugins/platforms/windows/qwindowsdrag.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/plugins/platforms/windows/qwindowsdrag.cpp b/src/plugins/platforms/windows/qwindowsdrag.cpp index ea4cac5a592..5d3a47c22fd 100644 --- a/src/plugins/platforms/windows/qwindowsdrag.cpp +++ b/src/plugins/platforms/windows/qwindowsdrag.cpp @@ -254,8 +254,9 @@ void QWindowsOleDropSource::createCursors() if (const QScreen *primaryScreen = QGuiApplication::primaryScreen()) platformScreen = primaryScreen->handle(); } - Q_ASSERT(platformScreen); - QPlatformCursor *platformCursor = platformScreen->cursor(); + QPlatformCursor *platformCursor = nullptr; + if (platformScreen) + platformCursor = platformScreen->cursor(); if (GetSystemMetrics (SM_REMOTESESSION) != 0) { /* Workaround for RDP issues with large cursors.