commit:     7d32da171523679474240d62b5dc7be927a6b218
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 16 21:54:50 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Sep 16 21:55:36 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7d32da17

media-video/pipewire: add 0.3.36

Bug: https://bugs.gentoo.org/791499
Bug: https://bugs.gentoo.org/813099
Fixes: bb2267c8c9f435c2623e924e3ae2ad4e444642b9
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...pewire-0.3.36-fix-crash-uaf-media-session.patch | 36 ++++++++++++++++++++++
 .../files/pipewire-0.3.36-fix-version.patch        | 25 +++++++++++++++
 ...pipewire-9999.ebuild => pipewire-0.3.36.ebuild} |  4 ++-
 media-video/pipewire/pipewire-9999.ebuild          |  2 +-
 4 files changed, 65 insertions(+), 2 deletions(-)

diff --git 
a/media-video/pipewire/files/pipewire-0.3.36-fix-crash-uaf-media-session.patch 
b/media-video/pipewire/files/pipewire-0.3.36-fix-crash-uaf-media-session.patch
new file mode 100644
index 00000000000..6080ff4fd7a
--- /dev/null
+++ 
b/media-video/pipewire/files/pipewire-0.3.36-fix-crash-uaf-media-session.patch
@@ -0,0 +1,36 @@
+https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/39c8ed4f62172026036281691cd3b67b469a8629
+
+From 39c8ed4f62172026036281691cd3b67b469a8629 Mon Sep 17 00:00:00 2001
+From: Pauli Virtanen <[email protected]>
+Date: Thu, 16 Sep 2021 19:18:52 +0300
+Subject: [PATCH] media-session: don't use-after-free if linking node removed
+
+Should fix an ASAN crash.
+---
+ src/examples/media-session/policy-node.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/examples/media-session/policy-node.c 
b/src/examples/media-session/policy-node.c
+index d83613d0b..e273434fa 100644
+--- a/src/examples/media-session/policy-node.c
++++ b/src/examples/media-session/policy-node.c
+@@ -869,6 +869,7 @@ static int link_nodes(struct node *node, struct node *peer)
+       struct pw_properties *props;
+       struct node *output, *input;
+       int res;
++      uint32_t node_id = node->id;
+ 
+       pw_log_debug(NAME " %p: link nodes %d %d remix:%d", impl,
+                       node->id, peer->id, !node->dont_remix);
+@@ -902,7 +903,7 @@ static int link_nodes(struct node *node, struct node *peer)
+ 
+       if (impl->linking_node_removed) {
+               impl->linking_node_removed = false;
+-              pw_log_info("linking node %d was removed", node->id);
++              pw_log_info("linking node %d was removed", node_id);
+               return -ENOENT;
+       }
+       node->linking = false;
+-- 
+GitLab
+

diff --git a/media-video/pipewire/files/pipewire-0.3.36-fix-version.patch 
b/media-video/pipewire/files/pipewire-0.3.36-fix-version.patch
new file mode 100644
index 00000000000..ace05b9e4a1
--- /dev/null
+++ b/media-video/pipewire/files/pipewire-0.3.36-fix-version.patch
@@ -0,0 +1,25 @@
+https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/10abcd92d76ddd02b690ff06d67c013bfc5fa5c2
+
+From 10abcd92d76ddd02b690ff06d67c013bfc5fa5c2 Mon Sep 17 00:00:00 2001
+From: Wim Taymans <[email protected]>
+Date: Thu, 16 Sep 2021 17:57:47 +0200
+Subject: [PATCH] update version number as well
+
+---
+ meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index c9b98c8ba..ea35ac674 100644
+--- a/meson.build
++++ b/meson.build
+@@ -1,5 +1,5 @@
+ project('pipewire', ['c' ],
+-  version : '0.3.35',
++  version : '0.3.36',
+   license : [ 'MIT', 'LGPL-2.1-or-later', 'GPL-2.0-only' ],
+   meson_version : '>= 0.54.0',
+   default_options : [ 'warning_level=3',
+-- 
+GitLab
+

diff --git a/media-video/pipewire/pipewire-9999.ebuild 
b/media-video/pipewire/pipewire-0.3.36.ebuild
similarity index 98%
copy from media-video/pipewire/pipewire-9999.ebuild
copy to media-video/pipewire/pipewire-0.3.36.ebuild
index a19e1c690b3..727450ab578 100644
--- a/media-video/pipewire/pipewire-9999.ebuild
+++ b/media-video/pipewire/pipewire-0.3.36.ebuild
@@ -73,7 +73,7 @@ RDEPEND="
        )
        pipewire-alsa? (
                >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}]
-               !media-plugins/alsa-plugins[pulseaudio]
+               !media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio]
        )
        !pipewire-alsa? ( 
media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] )
        systemd? ( sys-apps/systemd )
@@ -96,6 +96,8 @@ DOCS=( {README,INSTALL}.md NEWS )
 
 PATCHES=(
        "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch
+       "${FILESDIR}"/${P}-fix-crash-uaf-media-session.patch
+       "${FILESDIR}"/${P}-fix-version.patch
 )
 
 # limitsdfile related code taken from =sys-auth/realtime-base-0.1

diff --git a/media-video/pipewire/pipewire-9999.ebuild 
b/media-video/pipewire/pipewire-9999.ebuild
index a19e1c690b3..0fa096afe77 100644
--- a/media-video/pipewire/pipewire-9999.ebuild
+++ b/media-video/pipewire/pipewire-9999.ebuild
@@ -73,7 +73,7 @@ RDEPEND="
        )
        pipewire-alsa? (
                >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}]
-               !media-plugins/alsa-plugins[pulseaudio]
+               !media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio]
        )
        !pipewire-alsa? ( 
media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] )
        systemd? ( sys-apps/systemd )

Reply via email to