diff options
author | Weng Xuetian <wengxt@gmail.com> | 2023-11-10 19:43:37 -0800 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2023-11-13 19:28:21 +0000 |
commit | 18f942f3f3a99544f379c66578f14b28cafcef22 (patch) | |
tree | 8071c25ef583f65963fb68034a451d21edacd7d9 | |
parent | 55b9bc0ec73827475ae7215fb3b93b8ef8245d6e (diff) |
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>
-rw-r--r-- | src/client/qwaylandwindow.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp index 4841ba95b..b81e00ef2 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(); |