12345678910111213141516171819202122232425262728293031323334353637383940 |
- From 18f942f3f3a99544f379c66578f14b28cafcef22 Mon Sep 17 00:00:00 2001
- From: Weng Xuetian <wengxt@gmail.com>
- Date: Fri, 10 Nov 2023 19:43:37 -0800
- Subject: client: Always clear queued buffer busy flag when resetting the
- window
- In 39a003942ebab39a1d3b8bc64f41d0c68e92f4bf, the queued buffer is always
- set busy, but it may not be reset correctly if the queued buffer is not
- ever attached due to hiding the surface when window visibility is
- being updated at a very fast speed.
- Fixes: QTBUG-118650
- Task-number: QTBUG-118650
- Change-Id: Id0bdd3caa69c821bb84927f01b4839f46eee8a10
- Reviewed-by: David Edmundson <davidedmundson@kde.org>
- Reviewed-by: David Redondo <qt@david-redondo.de>
- (cherry picked from commit 6fe83f6076423068b652fa4fcb0b5adbd297f2a8)
- Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
- ---
- src/client/qwaylandwindow.cpp | 3 +++
- 1 file changed, 3 insertions(+)
- diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
- index 4841ba95..b81e00ef 100644
- --- a/src/client/qwaylandwindow.cpp
- +++ b/src/client/qwaylandwindow.cpp
- @@ -310,6 +310,9 @@ void QWaylandWindow::reset()
- mOpaqueArea = QRegion();
- mMask = QRegion();
-
- + if (mQueuedBuffer) {
- + mQueuedBuffer->setBusy(false);
- + }
- mQueuedBuffer = nullptr;
- mQueuedBufferDamage = QRegion();
-
- --
- cgit v1.2.3
|