- Add patches to fix applications not updating after some time (kde#449163): * 0001-Client-Remove-mWaitingForUpdateDelivery.patch * 0002-Guard-mResizeDirty-by-the-correctMutex.patch * 0003-Fix-up-mutexes-for-frame-callbacks.patch - Add patch to fix several feature detection tests: * 0001-Use-proper-dependencies-in-compile-tests.patch OBS-URL: https://build.opensuse.org/request/show/951555 OBS-URL: https://build.opensuse.org/package/show/KDE:Qt:5.15/libqt5-qtwayland?expand=0&rev=20
38 lines
1.3 KiB
Diff
38 lines
1.3 KiB
Diff
From 133b84352063dd959ae0cf21888dd10aa1443b76 Mon Sep 17 00:00:00 2001
|
|
From: David Edmundson <davidedmundson@kde.org>
|
|
Date: Thu, 3 Feb 2022 19:42:33 +0000
|
|
Subject: [PATCH 2/3] Guard mResizeDirty by the correctMutex
|
|
|
|
mResizeDirty is used in the GUI thread in setCanResize which can be
|
|
called from the GUI thread. It is queried and set whilst the resizeLock
|
|
is held. We need to guard our usage.
|
|
|
|
Change-Id: I5f8dcf8aa2cb2c4bb6274103df1da9e3e268605a
|
|
---
|
|
src/client/qwaylandwindow.cpp | 7 ++++---
|
|
1 file changed, 4 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
|
|
index 30ae5345..61700b32 100644
|
|
--- a/src/client/qwaylandwindow.cpp
|
|
+++ b/src/client/qwaylandwindow.cpp
|
|
@@ -357,11 +357,12 @@ void QWaylandWindow::setGeometry(const QRect &rect)
|
|
if (mWindowDecoration)
|
|
mWindowDecoration->update();
|
|
|
|
- if (mResizeAfterSwap && windowType() == Egl && mSentInitialResize)
|
|
+ if (mResizeAfterSwap && windowType() == Egl && mSentInitialResize) {
|
|
+ QMutexLocker lock(&mResizeLock);
|
|
mResizeDirty = true;
|
|
- else
|
|
+ } else {
|
|
QWindowSystemInterface::handleGeometryChange(window(), geometry());
|
|
-
|
|
+ }
|
|
mSentInitialResize = true;
|
|
}
|
|
QRect exposeGeometry(QPoint(), geometry().size());
|
|
--
|
|
2.34.0
|
|
|