From d89e5e5992277d92bd1bc7872657620c8e3d5516 Mon Sep 17 00:00:00 2001 From: DistroBaker Date: Wed, 4 Nov 2020 15:45:23 +0000 Subject: [PATCH] Merged update from upstream sources This is an automated DistroBaker update from upstream sources. If you do not know what this is about or would like to opt out, contact the OSCI team. Source: https://src.fedoraproject.org/rpms/pipewire.git#e5b2cea4d6202a2e64d4badbdf26d29bbcc6b46b --- ...col-native-do-version-check-on-HELLO.patch | 45 +++++++++++++++++++ pipewire.spec | 8 +++- 2 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 0001-protocol-native-do-version-check-on-HELLO.patch diff --git a/0001-protocol-native-do-version-check-on-HELLO.patch b/0001-protocol-native-do-version-check-on-HELLO.patch new file mode 100644 index 0000000..f9856ab --- /dev/null +++ b/0001-protocol-native-do-version-check-on-HELLO.patch @@ -0,0 +1,45 @@ +From b8c7b36d3b8be16593f554964cf2f852c21b5c2c Mon Sep 17 00:00:00 2001 +From: Wim Taymans +Date: Wed, 4 Nov 2020 16:12:25 +0100 +Subject: [PATCH] protocol-native: do version check on HELLO + +Always do the version check on HELLO because the connection could +have been moved from a v3 portal to a v0 client (like chrome) + +Fixes #270 +--- + src/modules/module-protocol-native/connection.c | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/src/modules/module-protocol-native/connection.c b/src/modules/module-protocol-native/connection.c +index 84fad68f..1807833a 100644 +--- a/src/modules/module-protocol-native/connection.c ++++ b/src/modules/module-protocol-native/connection.c +@@ -72,7 +72,6 @@ struct impl { + + uint32_t version; + size_t hdr_size; +- unsigned int checked:1; + }; + + /** \endcond */ +@@ -319,7 +318,7 @@ static int prepare_packet(struct pw_protocol_native_connection *conn, struct buf + buf->msg.opcode = p[1] >> 24; + len = p[1] & 0xffffff; + +- if (!impl->checked) { ++ if (buf->msg.id == 0 && buf->msg.opcode == 1) { + if (p[3] >= 4) { + pw_log_warn("old version detected"); + impl->version = 0; +@@ -331,7 +330,6 @@ static int prepare_packet(struct pw_protocol_native_connection *conn, struct buf + spa_hook_list_call(&conn->listener_list, + struct pw_protocol_native_connection_events, + start, 0, impl->version); +- impl->checked = 1; + } + if (impl->version >= 3) { + buf->msg.seq = p[2]; +-- +2.26.2 + diff --git a/pipewire.spec b/pipewire.spec index 47e5813..f46dcc8 100644 --- a/pipewire.spec +++ b/pipewire.spec @@ -29,7 +29,7 @@ Name: pipewire Summary: Media Sharing Server Version: %{majorversion}.%{minorversion}.%{microversion} -Release: 1%{?snap:.%{snap}git%{shortcommit}}%{?dist} +Release: 2%{?snap:.%{snap}git%{shortcommit}}%{?dist} License: MIT URL: https://pipewire.org/ %if 0%{?gitrel} @@ -41,6 +41,7 @@ Source0: https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/%{version}/p %endif ## upstream patches +Patch0: 0001-protocol-native-do-version-check-on-HELLO.patch ## upstreamable patches @@ -217,6 +218,8 @@ This package provides a PulseAudio implementation based on PipeWire %prep %setup -q -T -b0 -n %{name}-%{version}%{?gitrel:-%{gitrel}-g%{shortcommit}} +%patch0 -p1 -b .0000 + %build %meson \ -D docs=true -D man=true -D gstreamer=true -D systemd=true \ @@ -412,6 +415,9 @@ systemctl --no-reload preset --global pipewire.socket >/dev/null 2>&1 || : %endif %changelog +* Wed Nov 4 2020 Wim Taymans - 0.3.15-2 +- Add patch to fix screen sharing for old clients + * Wed Nov 4 2020 Wim Taymans - 0.3.15-1 - Update to 0.3.15