summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2022-05-29 22:18:27 +0200
committerAndreas Sturmlechner <asturm@gentoo.org>2022-05-29 22:24:15 +0200
commitfba1b0f23d486ac1f145e32d46d97bd84980058b (patch)
treec16a26248ea3ca25d1b1c5cb40e2e66aba877cdc /kde-plasma
parentkde-plasma/kwayland-integration: Drop 5.24.4 (diff)
downloadgentoo-fba1b0f23d486ac1f145e32d46d97bd84980058b.tar.gz
gentoo-fba1b0f23d486ac1f145e32d46d97bd84980058b.tar.bz2
gentoo-fba1b0f23d486ac1f145e32d46d97bd84980058b.zip
kde-plasma/kwayland-server: Drop 5.24.4
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'kde-plasma')
-rw-r--r--kde-plasma/kwayland-server/Manifest1
-rw-r--r--kde-plasma/kwayland-server/files/kwayland-server-5.24.4-fix-crash-on-screen-setup-change.patch109
-rw-r--r--kde-plasma/kwayland-server/files/kwayland-server-5.24.4-fix-layer-shell-reset.patch57
-rw-r--r--kde-plasma/kwayland-server/files/kwayland-server-5.24.4-fix-race-in-wp_drm_lease_v1.patch73
-rw-r--r--kde-plasma/kwayland-server/files/kwayland-server-5.24.4-guard-subsurface-parent-access.patch44
-rw-r--r--kde-plasma/kwayland-server/kwayland-server-5.24.4-r2.ebuild46
6 files changed, 0 insertions, 330 deletions
diff --git a/kde-plasma/kwayland-server/Manifest b/kde-plasma/kwayland-server/Manifest
index efd2337d9a36..6ba5254c5e4a 100644
--- a/kde-plasma/kwayland-server/Manifest
+++ b/kde-plasma/kwayland-server/Manifest
@@ -1,2 +1 @@
-DIST kwayland-server-5.24.4.tar.xz 221412 BLAKE2B efc970b7f7d99e5195e74a71480039b6a6de15d23f4af9ea776a5b4f45494d8323fee8729e8b2633ed0e25167c99c2a73b63f08ce4e1cdd75d0870258e8d65ea SHA512 9281261b96ceccfb59b1d4eef247572424a196951cf927ae2d65eb6153cb0a9409059e789c7479ef04d8df750c109abfe202395a0a1f49010c40b1190cc2e640
DIST kwayland-server-5.24.5.tar.xz 221388 BLAKE2B 38a1e66c1290c32db10a6818b10e57097fef70ac376797e272c329e9a49556bf423da4a731e46718bf39a30131def4adf90f1742589425ad040bc125c84fcffa SHA512 72159618a22233b9b49cab8ee1a804f629763e903a2e711c8c23f990544d79b5d27e768c33f8d844c916e41a6d3a2af5ddcab69d0448569adc247e0f737975f5
diff --git a/kde-plasma/kwayland-server/files/kwayland-server-5.24.4-fix-crash-on-screen-setup-change.patch b/kde-plasma/kwayland-server/files/kwayland-server-5.24.4-fix-crash-on-screen-setup-change.patch
deleted file mode 100644
index 4ddd9737e759..000000000000
--- a/kde-plasma/kwayland-server/files/kwayland-server-5.24.4-fix-crash-on-screen-setup-change.patch
+++ /dev/null
@@ -1,109 +0,0 @@
-From 40364d2ee670a5a74318ef96c643762293ca95f0 Mon Sep 17 00:00:00 2001
-From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
-Date: Fri, 8 Apr 2022 12:44:33 +0300
-Subject: [PATCH] Simplify code that announces available modes and current mode
-
-If no mode has the current flag set, the first mode object will be
-announced twice.
-
-There's also no benefit from sending the current mode as last. If the
-current mode changes, the compositor will send the current_mode event,
-not the mode event.
-
-BUG: 452318
-
-
-(cherry picked from commit b40c4e3f4108b9a0be9b4f5d437e72f7c2aa3fea)
----
- src/server/outputdevice_v2_interface.cpp | 35 ++++++++----------------
- 1 file changed, 11 insertions(+), 24 deletions(-)
-
-diff --git a/src/server/outputdevice_v2_interface.cpp b/src/server/outputdevice_v2_interface.cpp
-index 31ab16ca..9093bd2f 100644
---- a/src/server/outputdevice_v2_interface.cpp
-+++ b/src/server/outputdevice_v2_interface.cpp
-@@ -31,7 +31,7 @@ public:
-
- void sendGeometry(Resource *resource);
- wl_resource *sendNewMode(Resource *resource, OutputDeviceModeV2Interface *mode);
-- void sendCurrentMode(Resource *resource, OutputDeviceModeV2Interface *mode);
-+ void sendCurrentMode(Resource *resource);
- void sendDone(Resource *resource);
- void sendUuid(Resource *resource);
- void sendEdid(Resource *resource);
-@@ -180,7 +180,7 @@ void OutputDeviceV2Interface::setCurrentMode(OutputDeviceModeV2Interface *mode)
- const auto clientResources = d->resourceMap();
- for (auto it = clientResources.begin(); it != clientResources.end(); ++it) {
- auto resource = *it;
-- d->sendCurrentMode(resource, d->currentMode);
-+ d->sendCurrentMode(resource);
- d->sendDone(resource);
- }
- d->updateGeometry();
-@@ -257,22 +257,10 @@ void OutputDeviceV2InterfacePrivate::kde_output_device_v2_bind_resource(Resource
- sendName(resource);
- sendSerialNumber(resource);
-
-- auto currentModeIt = modes.end();
-- for (auto it = modes.begin(); it != modes.end(); ++it) {
-- auto &mode = *it;
-- if (mode->flags().testFlag(OutputDeviceModeV2Interface::ModeFlag::Current)) {
-- // needs to be sent as last mode
-- currentModeIt = it;
-- continue;
-- }
-+ for (OutputDeviceModeV2Interface *mode : std::as_const(modes)) {
- sendNewMode(resource, mode);
- }
--
-- if (currentModeIt != modes.end()) {
-- auto modeResource = sendNewMode(resource, *currentModeIt);
-- send_current_mode(resource->handle, modeResource);
-- }
--
-+ sendCurrentMode(resource);
- sendUuid(resource);
- sendEdid(resource);
- sendEnabled(resource);
-@@ -296,9 +284,9 @@ wl_resource *OutputDeviceV2InterfacePrivate::sendNewMode(Resource *resource, Out
- return modeResource->handle;
- }
-
--void OutputDeviceV2InterfacePrivate::sendCurrentMode(Resource *outputResource, OutputDeviceModeV2Interface *mode)
-+void OutputDeviceV2InterfacePrivate::sendCurrentMode(Resource *outputResource)
- {
-- const auto modeResource = OutputDeviceModeV2InterfacePrivate::get(mode)->findResource(outputResource);
-+ const auto modeResource = OutputDeviceModeV2InterfacePrivate::get(currentMode)->findResource(outputResource);
- send_current_mode(outputResource->handle, modeResource->handle);
- }
-
-@@ -506,12 +494,12 @@ void OutputDeviceV2Interface::setModes(const QList<OutputDeviceModeV2Interface *
- d->modes << outputDeviceMode;
- outputDeviceMode->setParent(this);
-
-+ for (auto resource : clientResources) {
-+ d->sendNewMode(resource, outputDeviceMode);
-+ }
-+
- if (outputDeviceMode->flags().testFlag(OutputDeviceModeV2Interface::ModeFlag::Current)) {
- d->currentMode = outputDeviceMode;
-- } else {
-- for (auto resource : clientResources) {
-- d->sendNewMode(resource, outputDeviceMode);
-- }
- }
- }
-
-@@ -520,8 +508,7 @@ void OutputDeviceV2Interface::setModes(const QList<OutputDeviceModeV2Interface *
- }
-
- for (auto resource : clientResources) {
-- d->sendNewMode(resource, d->currentMode);
-- d->sendCurrentMode(resource, d->currentMode);
-+ d->sendCurrentMode(resource);
- }
-
- qDeleteAll(oldModes.crbegin(), oldModes.crend());
---
-GitLab
-
diff --git a/kde-plasma/kwayland-server/files/kwayland-server-5.24.4-fix-layer-shell-reset.patch b/kde-plasma/kwayland-server/files/kwayland-server-5.24.4-fix-layer-shell-reset.patch
deleted file mode 100644
index a3a0b2067f5d..000000000000
--- a/kde-plasma/kwayland-server/files/kwayland-server-5.24.4-fix-layer-shell-reset.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 97df88c6c8af925382bb1f59b7c6ad75f28142a0 Mon Sep 17 00:00:00 2001
-From: David Edmundson <kde@davidedmundson.co.uk>
-Date: Tue, 5 Apr 2022 13:26:26 +0100
-Subject: [PATCH] Fix layer shell reset
-
-In the current form any client committing multiple times without
-attaching a buffer would unset the cached state and trigger an error.
-
-It's legal (though weird) to commit multiple times before attaching a
-buffer.
-
-We should only reset the state if we commit an empty buffer after having
-committed an existing buffer. This brings us in line with XdgShell.
-
-
-(cherry picked from commit a5c55b68589a8771cde0bf4ce552702da6fca41c)
----
- src/server/layershell_v1_interface.cpp | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/src/server/layershell_v1_interface.cpp b/src/server/layershell_v1_interface.cpp
-index 17086334..19fcd68e 100644
---- a/src/server/layershell_v1_interface.cpp
-+++ b/src/server/layershell_v1_interface.cpp
-@@ -69,6 +69,7 @@ public:
- bool isClosed = false;
- bool isConfigured = false;
- bool isCommitted = false;
-+ bool firstBufferAttached = false;
-
- protected:
- void zwlr_layer_surface_v1_destroy_resource(Resource *resource) override;
-@@ -290,8 +291,10 @@ void LayerSurfaceV1InterfacePrivate::commit()
- return;
- }
-
-- if (!surface->isMapped() && isCommitted) {
-+ // detect reset
-+ if (!surface->isMapped() && firstBufferAttached) {
- isCommitted = false;
-+ firstBufferAttached = false;
- isConfigured = false;
-
- current = LayerSurfaceV1State();
-@@ -303,6 +306,9 @@ void LayerSurfaceV1InterfacePrivate::commit()
- const LayerSurfaceV1State previous = std::exchange(current, pending);
-
- isCommitted = true; // Must set the committed state before emitting any signals.
-+ if (surface->isMapped()) {
-+ firstBufferAttached = true;
-+ }
-
- if (previous.acceptsFocus != current.acceptsFocus) {
- Q_EMIT q->acceptsFocusChanged();
---
-GitLab
-
diff --git a/kde-plasma/kwayland-server/files/kwayland-server-5.24.4-fix-race-in-wp_drm_lease_v1.patch b/kde-plasma/kwayland-server/files/kwayland-server-5.24.4-fix-race-in-wp_drm_lease_v1.patch
deleted file mode 100644
index 1799a711b472..000000000000
--- a/kde-plasma/kwayland-server/files/kwayland-server-5.24.4-fix-race-in-wp_drm_lease_v1.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-From dc09ce85f00b3a790e2817888067c3826280dd8e Mon Sep 17 00:00:00 2001
-From: Weng Xuetian <wengxt@gmail.com>
-Date: Sat, 16 Apr 2022 00:01:12 -0700
-Subject: [PATCH] Fix race in wp_drm_lease_v1.
-
-Basically this is a well known issue in wayland for globals. If bind
-comes after destroyed, it will raise a invalid global error. The common
-practice is to delay the destroy of global. Similar technique is also
-applied to wl_output.
-
-CCBUG: 452435
-(cherry picked from commit cdc9dcfb0a1f0445c46ee2cefa114329a2408555)
----
- src/server/drmleasedevice_v1_interface.cpp | 14 +++++---------
- src/server/drmleasedevice_v1_interface_p.h | 2 +-
- 2 files changed, 6 insertions(+), 10 deletions(-)
-
-diff --git a/src/server/drmleasedevice_v1_interface.cpp b/src/server/drmleasedevice_v1_interface.cpp
-index bffd22cd..7e338022 100644
---- a/src/server/drmleasedevice_v1_interface.cpp
-+++ b/src/server/drmleasedevice_v1_interface.cpp
-@@ -84,10 +84,6 @@ void DrmLeaseDeviceV1InterfacePrivate::remove()
- request->connectors.clear();
- }
- globalRemove();
-- removed = true;
-- if (resourceMap().isEmpty()) {
-- delete this;
-- }
- }
-
- void DrmLeaseDeviceV1InterfacePrivate::registerConnector(DrmLeaseConnectorV1Interface *connector)
-@@ -144,6 +140,9 @@ void DrmLeaseDeviceV1InterfacePrivate::wp_drm_lease_device_v1_release(Resource *
-
- void DrmLeaseDeviceV1InterfacePrivate::wp_drm_lease_device_v1_bind_resource(Resource *resource)
- {
-+ if (isGlobalRemoved()) {
-+ return;
-+ }
- if (!hasDrmMaster) {
- pendingFds << resource->handle;
- return;
-@@ -161,12 +160,9 @@ void DrmLeaseDeviceV1InterfacePrivate::wp_drm_lease_device_v1_bind_resource(Reso
- }
- }
-
--void DrmLeaseDeviceV1InterfacePrivate::wp_drm_lease_device_v1_destroy_resource(Resource *resource)
-+void DrmLeaseDeviceV1InterfacePrivate::wp_drm_lease_device_v1_destroy_global()
- {
-- Q_UNUSED(resource)
-- if (removed && resourceMap().isEmpty()) {
-- delete this;
-- }
-+ delete this;
- }
-
-
-diff --git a/src/server/drmleasedevice_v1_interface_p.h b/src/server/drmleasedevice_v1_interface_p.h
-index 4bef36e4..085aac85 100644
---- a/src/server/drmleasedevice_v1_interface_p.h
-+++ b/src/server/drmleasedevice_v1_interface_p.h
-@@ -44,7 +44,7 @@ protected:
- void wp_drm_lease_device_v1_create_lease_request(Resource *resource, uint32_t id) override;
- void wp_drm_lease_device_v1_release(Resource *resource) override;
- void wp_drm_lease_device_v1_bind_resource(Resource *resource) override;
-- void wp_drm_lease_device_v1_destroy_resource(Resource *resource) override;
-+ void wp_drm_lease_device_v1_destroy_global() override;
- };
-
- class DrmLeaseConnectorV1InterfacePrivate : public QObject, public QtWaylandServer::wp_drm_lease_connector_v1
---
-GitLab
-
diff --git a/kde-plasma/kwayland-server/files/kwayland-server-5.24.4-guard-subsurface-parent-access.patch b/kde-plasma/kwayland-server/files/kwayland-server-5.24.4-guard-subsurface-parent-access.patch
deleted file mode 100644
index e40189ab2744..000000000000
--- a/kde-plasma/kwayland-server/files/kwayland-server-5.24.4-guard-subsurface-parent-access.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 6dcf73adaafeaa40c05e22df5f1c10af88df362b Mon Sep 17 00:00:00 2001
-From: David Edmundson <kde@davidedmundson.co.uk>
-Date: Wed, 30 Mar 2022 14:57:12 +0100
-Subject: [PATCH] Guard subsurface parent access.
-
-Whilst a subsurface must have a parent at the time of creation, the
-lifespan is not guaranteed afterwards.
-
-It's a weird thing for a client to do, but we need to not crash
-afterwards.
-
-If the parent surface is destroyed we should consider the surface
-unmapped.
-
-BUG: 452044
-
-
-(cherry picked from commit 1d2424a56a13dc55aeab699a38234a7cafa091d8)
----
- src/server/surface_interface.cpp | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/src/server/surface_interface.cpp b/src/server/surface_interface.cpp
-index ef2584f4..8bfac95f 100644
---- a/src/server/surface_interface.cpp
-+++ b/src/server/surface_interface.cpp
-@@ -678,7 +678,13 @@ void SurfaceInterfacePrivate::commitFromCache()
-
- bool SurfaceInterfacePrivate::computeEffectiveMapped() const
- {
-- return bufferRef && (!subSurface || subSurface->parentSurface()->isMapped());
-+ if (!bufferRef) {
-+ return false;
-+ }
-+ if (subSurface) {
-+ return subSurface->parentSurface() && subSurface->parentSurface()->isMapped();
-+ }
-+ return true;
- }
-
- void SurfaceInterfacePrivate::updateEffectiveMapped()
---
-GitLab
-
diff --git a/kde-plasma/kwayland-server/kwayland-server-5.24.4-r2.ebuild b/kde-plasma/kwayland-server/kwayland-server-5.24.4-r2.ebuild
deleted file mode 100644
index 466f2ec10616..000000000000
--- a/kde-plasma/kwayland-server/kwayland-server-5.24.4-r2.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-ECM_QTHELP="true"
-ECM_TEST="true"
-KFMIN=5.90.0
-PVCUT=$(ver_cut 1-2)
-QTMIN=5.15.2
-inherit ecm kde.org
-
-DESCRIPTION="Wayland Server Components built on KDE Frameworks"
-HOMEPAGE="https://invent.kde.org/plasma/kwayland-server"
-
-LICENSE="LGPL-2.1"
-SLOT="5"
-KEYWORDS="amd64 ~arm arm64 ~ppc64 ~riscv x86"
-IUSE=""
-
-# All failing, I guess we need a virtual wayland server
-RESTRICT="test"
-
-RDEPEND="
- >=dev-libs/wayland-1.19.0
- >=dev-qt/qtconcurrent-${QTMIN}:5
- >=dev-qt/qtgui-${QTMIN}:5[egl]
- >=dev-qt/qtwayland-${QTMIN}:5
- >=kde-frameworks/kwayland-${KFMIN}:5
- media-libs/libglvnd
-"
-DEPEND="${RDEPEND}
- >=dev-libs/plasma-wayland-protocols-1.6.0
- >=dev-libs/wayland-protocols-1.24
-"
-BDEPEND="
- >=dev-qt/qtwaylandscanner-${QTMIN}:5
- dev-util/wayland-scanner
-"
-
-PATCHES=(
- "${FILESDIR}"/${P}-fix-layer-shell-reset.patch
- "${FILESDIR}"/${P}-guard-subsurface-parent-access.patch # KDE-bug 452044
- "${FILESDIR}"/${P}-fix-crash-on-screen-setup-change.patch # KDE-bug 452318
- "${FILESDIR}"/${P}-fix-race-in-wp_drm_lease_v1.patch # KDE-bug 452435
-)