From a01f2112f4b88dbccd4af8c16248457376e363ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tor=20Arne=20Vestb=C3=B8?= Date: Mon, 21 Nov 2016 14:26:07 +0100 Subject: [PATCH] macOS: Prevent stale references to NSScreen during screen removal Task-number: QTBUG-57223 Change-Id: I7cdc075a4afee5ad8c23fd3c43a04f2a258b81f9 Reviewed-by: Liang Qi Reviewed-by: Timur Pocheptsov Reviewed-by: Richard Moe Gustavsen --- src/plugins/platforms/cocoa/qcocoaintegration.mm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/plugins/platforms/cocoa/qcocoaintegration.mm b/src/plugins/platforms/cocoa/qcocoaintegration.mm index 7e9f554520..db483949e0 100644 --- a/src/plugins/platforms/cocoa/qcocoaintegration.mm +++ b/src/plugins/platforms/cocoa/qcocoaintegration.mm @@ -463,6 +463,8 @@ void QCocoaIntegration::updateScreens() // Now the leftovers in remainingScreens are no longer current, so we can delete them. foreach (QCocoaScreen* screen, remainingScreens) { mScreens.removeOne(screen); + // Prevent stale references to NSScreen during destroy + screen->m_nsScreen = nil; destroyScreen(screen); } }