From 430ab36bb48ec6c16bd7a42baa82a124ae0d02e9 Mon Sep 17 00:00:00 2001 From: Paul Olav Tvete Date: Thu, 23 Sep 2021 14:13:26 +0200 Subject: [PATCH] Wayland client: Don't applyConfigure for destroyed surface If a window is rapidly hidden and re-shown multiple times, the configure for a deleted wl_surface may be invoked after a new surface has been created. This change makes sure we always reset mWaitingToApplyConfigure before a new wl_surface is created. The superfluous applyConfigure invocation will then be safely ignored. Fixes: QTBUG-96464 Pick-to: 6.2 Change-Id: Ie2d718f77dc8de93674c6b86b5128c4f50414df1 Reviewed-by: Vlad Zahorodnii Reviewed-by: David Edmundson --- src/plugins/platforms/wayland/qwaylandwindow.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/plugins/platforms/wayland/qwaylandwindow.cpp b/src/plugins/platforms/wayland/qwaylandwindow.cpp index 2ca45259f72..a708afcedc0 100644 --- a/src/plugins/platforms/wayland/qwaylandwindow.cpp +++ b/src/plugins/platforms/wayland/qwaylandwindow.cpp @@ -261,6 +261,7 @@ void QWaylandWindow::reset() mFrameCallbackElapsedTimer.invalidate(); mWaitingForFrameCallback = false; mFrameCallbackTimedOut = false; + mWaitingToApplyConfigure = false; mMask = QRegion(); mQueuedBuffer = nullptr;