Qt 5.15.5 with patch collection + qtscript 5.15.10
OBS-URL: https://build.opensuse.org/package/show/KDE:Qt:5.15/libqt5-qtwayland?expand=0&rev=22
This commit is contained in:
parent
90b5b201c1
commit
7c74bffc6e
@ -1,23 +0,0 @@
|
||||
From 8615532a61e68e46c204d937053150b1906fa584 Mon Sep 17 00:00:00 2001
|
||||
From: Fabian Vogt <fvogt@suse.de>
|
||||
Date: Mon, 21 Jun 2021 22:18:54 +0200
|
||||
Subject: [PATCH] Revert "Bump version"
|
||||
|
||||
This reverts commit 30cb2a87fcc6265232cb5a3ffce9836da6e531d6.
|
||||
---
|
||||
.qmake.conf | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/.qmake.conf b/.qmake.conf
|
||||
index bb8d0645..f63b6641 100644
|
||||
--- a/.qmake.conf
|
||||
+++ b/.qmake.conf
|
||||
@@ -4,4 +4,4 @@ DEFINES += QT_NO_FOREACH
|
||||
DEFINES += QT_NO_JAVA_STYLE_ITERATORS
|
||||
DEFINES += QT_NO_LINKED_LIST
|
||||
|
||||
-MODULE_VERSION = 5.15.3
|
||||
+MODULE_VERSION = 5.15.2
|
||||
--
|
||||
2.20.1
|
||||
|
@ -1,87 +0,0 @@
|
||||
From ee0ab1c58f1020e901b665c79684266730f1ce29 Mon Sep 17 00:00:00 2001
|
||||
From: David Edmundson <davidedmundson@kde.org>
|
||||
Date: Thu, 3 Feb 2022 14:27:08 +0000
|
||||
Subject: [PATCH 3/3] Fix up mutexes for frame callbacks
|
||||
|
||||
Everything related to frame callback timings is used by potentially 3
|
||||
threads. Access needs guarding.
|
||||
|
||||
Change-Id: I9f22390c175d9f2f63d31b1ebf0cdc0b830be937
|
||||
---
|
||||
src/client/qwaylandwindow.cpp | 14 +++++++++-----
|
||||
src/client/qwaylandwindow_p.h | 10 +++++++---
|
||||
2 files changed, 16 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
|
||||
index 61700b32..84dcacc3 100644
|
||||
--- a/src/client/qwaylandwindow.cpp
|
||||
+++ b/src/client/qwaylandwindow.cpp
|
||||
@@ -256,8 +256,12 @@ void QWaylandWindow::reset()
|
||||
mFrameCallback = nullptr;
|
||||
}
|
||||
|
||||
- mFrameCallbackElapsedTimer.invalidate();
|
||||
- mWaitingForFrameCallback = false;
|
||||
+ {
|
||||
+ QMutexLocker locker(&mFrameSyncMutex);
|
||||
+ mFrameCallbackElapsedTimer.invalidate();
|
||||
+ mWaitingForFrameCallback = false;
|
||||
+ }
|
||||
+
|
||||
mFrameCallbackTimedOut = false;
|
||||
|
||||
mMask = QRegion();
|
||||
@@ -1132,6 +1136,7 @@ QVariant QWaylandWindow::property(const QString &name, const QVariant &defaultVa
|
||||
|
||||
void QWaylandWindow::timerEvent(QTimerEvent *event)
|
||||
{
|
||||
+ QMutexLocker locker(&mFrameSyncMutex);
|
||||
if (event->timerId() != mFrameCallbackCheckIntervalTimerId)
|
||||
return;
|
||||
|
||||
@@ -1190,15 +1195,14 @@ void QWaylandWindow::handleUpdate()
|
||||
{
|
||||
qCDebug(lcWaylandBackingstore) << "handleUpdate" << QThread::currentThread();
|
||||
|
||||
- if (mWaitingForFrameCallback)
|
||||
- return;
|
||||
-
|
||||
// TODO: Should sync subsurfaces avoid requesting frame callbacks?
|
||||
QReadLocker lock(&mSurfaceLock);
|
||||
if (!mSurface)
|
||||
return;
|
||||
|
||||
QMutexLocker locker(&mFrameSyncMutex);
|
||||
+ if (mWaitingForFrameCallback)
|
||||
+ return;
|
||||
|
||||
struct ::wl_surface *wrappedSurface = reinterpret_cast<struct ::wl_surface *>(wl_proxy_create_wrapper(mSurface->object()));
|
||||
wl_proxy_set_queue(reinterpret_cast<wl_proxy *>(wrappedSurface), mDisplay->frameEventQueue());
|
||||
diff --git a/src/client/qwaylandwindow_p.h b/src/client/qwaylandwindow_p.h
|
||||
index 3ff68ccb..025d7917 100644
|
||||
--- a/src/client/qwaylandwindow_p.h
|
||||
+++ b/src/client/qwaylandwindow_p.h
|
||||
@@ -226,13 +226,17 @@ protected:
|
||||
Qt::MouseButtons mMousePressedInContentArea = Qt::NoButton;
|
||||
|
||||
WId mWindowId;
|
||||
+
|
||||
+ // The following are used by the main thread the render thread and the event frame thread
|
||||
+ // Access should be guarded by mFrameSyncMutex
|
||||
+ QMutex mFrameSyncMutex;
|
||||
+ QWaitCondition mFrameSyncWait;
|
||||
bool mWaitingForFrameCallback = false;
|
||||
- bool mFrameCallbackTimedOut = false; // Whether the frame callback has timed out
|
||||
int mFrameCallbackCheckIntervalTimerId = -1;
|
||||
QElapsedTimer mFrameCallbackElapsedTimer;
|
||||
+
|
||||
+ bool mFrameCallbackTimedOut = false; // Whether the frame callback has timed out
|
||||
struct ::wl_callback *mFrameCallback = nullptr;
|
||||
- QMutex mFrameSyncMutex;
|
||||
- QWaitCondition mFrameSyncWait;
|
||||
|
||||
// True when we have called deliverRequestUpdate, but the client has not yet attached a new buffer
|
||||
bool mWaitingForUpdate = false;
|
||||
--
|
||||
2.34.0
|
||||
|
4
_service
4
_service
@ -1,12 +1,12 @@
|
||||
<services>
|
||||
<service name="obs_scm" mode="disabled">
|
||||
<param name="changesgenerate">enable</param>
|
||||
<param name="versionformat">5.15.2+kde@TAG_OFFSET@</param>
|
||||
<param name="versionformat">5.15.5+kde@TAG_OFFSET@</param>
|
||||
<param name="url">https://invent.kde.org/qt/qt/qtwayland.git</param>
|
||||
<param name="scm">git</param>
|
||||
<param name="filename">qtwayland-everywhere-src</param>
|
||||
<param name="revision">kde/5.15</param>
|
||||
<param name="parent-tag">v5.15.2</param>
|
||||
<param name="parent-tag">v5.15.5-lts-lgpl</param>
|
||||
<param name="changesgenerate">enable</param>
|
||||
</service>
|
||||
<service name="set_version" mode="disabled"/>
|
||||
|
@ -1,3 +1,26 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 27 13:10:47 UTC 2022 - Fabian Vogt <fabian@ritter-vogt.de>
|
||||
|
||||
- Update to version 5.15.5+kde39, rebased upstream:
|
||||
* Fix build with libcxx (missing array include)
|
||||
* Reduce memory leakage
|
||||
* use poll(2) when reading from clipboard
|
||||
* Fix race condition on mWaitingForUpdateDelivery
|
||||
* Revert "Client: Remove mWaitingForUpdateDelivery"
|
||||
* client: update button state and etc in pointer_leave()
|
||||
* Docs: Add "instantiates" keywords
|
||||
* Add missing define guards
|
||||
* Fix touch being ignored when down and up are in the same frame
|
||||
* Fix race condition when attaching client to text input
|
||||
* Revert "Update commercial license headers"
|
||||
* Update commercial license headers
|
||||
- Commits dropped by the rebase:
|
||||
* Fix backport, context destruction was omitted
|
||||
* Fix compilation
|
||||
- Drop 0001-Revert-Bump-version.patch, it's versioned correctly now
|
||||
- Drop patches, no longer directly applicable:
|
||||
* 0003-Fix-up-mutexes-for-frame-callbacks.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 22 15:32:53 UTC 2022 - Fabian Vogt <fabian@ritter-vogt.de>
|
||||
|
||||
@ -798,5 +821,5 @@ Fri Oct 17 09:35:32 UTC 2014 - hrvoje.senjan@gmail.com
|
||||
Mon Sep 8 20:15:30 UTC 2014 - hrvoje.senjan@gmail.com
|
||||
|
||||
- Update to 5.4.0 alpha:
|
||||
* Part of the official Qt release
|
||||
* Part of the official Qt release
|
||||
|
||||
|
@ -22,11 +22,11 @@
|
||||
%define qt5_snapshot 1
|
||||
%define libname libQt5WaylandCompositor5
|
||||
%define base_name libqt5
|
||||
%define real_version 5.15.2
|
||||
%define so_version 5.15.2
|
||||
%define real_version 5.15.5
|
||||
%define so_version 5.15.5
|
||||
%define tar_version qtwayland-everywhere-src-%{version}
|
||||
Name: libqt5-qtwayland
|
||||
Version: 5.15.2+kde54
|
||||
Version: 5.15.5+kde39
|
||||
Release: 0
|
||||
Summary: Qt 5 Wayland Addon
|
||||
# The wayland compositor files are GPL-3.0-or-later
|
||||
@ -35,12 +35,8 @@ Group: Development/Libraries/X11
|
||||
URL: https://www.qt.io
|
||||
Source: %{tar_version}.tar.xz
|
||||
Source1: baselibs.conf
|
||||
# PATCH-FIX-OPENSUSE
|
||||
Patch1: 0001-Revert-Bump-version.patch
|
||||
# https://codereview.qt-project.org/c/qt/qtwayland/+/393828/1
|
||||
Patch3: 0002-Guard-mResizeDirty-by-the-correctMutex.patch
|
||||
# https://codereview.qt-project.org/c/qt/qtwayland/+/393826/1
|
||||
Patch4: 0003-Fix-up-mutexes-for-frame-callbacks.patch
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: libqt5-qtbase-private-headers-devel >= %{real_version}
|
||||
BuildRequires: libqt5-qtdeclarative-private-headers-devel >= %{real_version}
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:6a85a954605f8d6677f8011750fb5f8f024e1c7b1de9d1e53d5dab2d769ddaf4
|
||||
size 4691980
|
3
qtwayland-everywhere-src-5.15.5+kde39.obscpio
Normal file
3
qtwayland-everywhere-src-5.15.5+kde39.obscpio
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:25a1c1fa101e85950c9d8080aebf99cec45670adf0d9d88e8f73e8c09a92484c
|
||||
size 4693516
|
@ -1,4 +1,4 @@
|
||||
name: qtwayland-everywhere-src
|
||||
version: 5.15.2+kde54
|
||||
mtime: 1645543848
|
||||
commit: 8f0c9169310344c8f179311bae446239cdb61f68
|
||||
version: 5.15.5+kde39
|
||||
mtime: 1655756241
|
||||
commit: 64fa557eb30fc1219bec50a45107ea1a983411ed
|
||||
|
Loading…
Reference in New Issue
Block a user