diff options
author | Paul Olav Tvete <paul.tvete@qt.io> | 2021-09-23 14:13:26 +0200 |
---|---|---|
committer | Paul Olav Tvete <paul.tvete@qt.io> | 2021-09-24 11:57:53 +0000 |
commit | a0f5937868a97af7b6f97ffc9c0aed12d84cceb3 (patch) | |
tree | aa33a977b86bc90ab135ebda86e39becd13893ad /src/client/qwaylandwindow.cpp | |
parent | c64c5d3849b40617e1de0295f8690f354cab2b3a (diff) | |
download | qtwayland-a0f5937868a97af7b6f97ffc9c0aed12d84cceb3.tar.gz |
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 <vlad.zahorodnii@kde.org>
Reviewed-by: David Edmundson <davidedmundson@kde.org>
Diffstat (limited to 'src/client/qwaylandwindow.cpp')
-rw-r--r-- | src/client/qwaylandwindow.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp index 2ca45259..a708afce 100644 --- a/src/client/qwaylandwindow.cpp +++ b/src/client/qwaylandwindow.cpp @@ -261,6 +261,7 @@ void QWaylandWindow::reset() mFrameCallbackElapsedTimer.invalidate(); mWaitingForFrameCallback = false; mFrameCallbackTimedOut = false; + mWaitingToApplyConfigure = false; mMask = QRegion(); mQueuedBuffer = nullptr; |