summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-12-09 18:30:44 +0000
committerSam James <sam@gentoo.org>2023-12-09 18:41:55 +0000
commitb46eb64181a50d28f6857949209ab7b12ccf77d8 (patch)
treeb1fd855a0bd6f5eb13d8d61f65a6f5ddbd612f7e
parentdev-db/phpmyadmin: unkeyword for ia64 (diff)
downloadgentoo-b46eb64181a50d28f6857949209ab7b12ccf77d8.tar.gz
gentoo-b46eb64181a50d28f6857949209ab7b12ccf77d8.tar.bz2
gentoo-b46eb64181a50d28f6857949209ab7b12ccf77d8.zip
media-video/pipewire: backport bell segfault fix
Closes: https://bugs.gentoo.org/919133 Signed-off-by: Sam James <sam@gentoo.org>
-rw-r--r--media-video/pipewire/files/1.0.0/0002-fix-x11-bell-segfault.patch29
-rw-r--r--media-video/pipewire/pipewire-1.0.0-r1.ebuild (renamed from media-video/pipewire/pipewire-1.0.0.ebuild)0
2 files changed, 29 insertions, 0 deletions
diff --git a/media-video/pipewire/files/1.0.0/0002-fix-x11-bell-segfault.patch b/media-video/pipewire/files/1.0.0/0002-fix-x11-bell-segfault.patch
new file mode 100644
index 000000000000..ecf7ded220f4
--- /dev/null
+++ b/media-video/pipewire/files/1.0.0/0002-fix-x11-bell-segfault.patch
@@ -0,0 +1,29 @@
+https://bugs.gentoo.org/919133
+https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3688
+https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/8ecc61e1177c94e78fa171ee359cfbbd239942bc
+
+From 8ecc61e1177c94e78fa171ee359cfbbd239942bc Mon Sep 17 00:00:00 2001
+From: Wim Taymans <wtaymans@redhat.com>
+Date: Tue, 5 Dec 2023 16:18:30 +0100
+Subject: [PATCH] module-x11-bell: force pulse backend
+
+The libcanberra ALSA backend has some races and causes crashes, we
+should try to not use that one.
+
+Fixes #3688
+--- a/src/modules/module-x11-bell.c
++++ b/src/modules/module-x11-bell.c
+@@ -104,6 +104,11 @@ static int play_sample(struct impl *impl)
+ res = -EIO;
+ goto exit;
+ }
++ if ((res = ca_context_set_driver(ca, "pulse")) < 0) {
++ pw_log_error("canberra context set backend error: %s", ca_strerror(res));
++ res = -EIO;
++ goto exit_destroy;
++ }
+ if ((res = ca_context_open(ca)) < 0) {
+ pw_log_error("canberra context open error: %s", ca_strerror(res));
+ res = -EIO;
+--
+GitLab
diff --git a/media-video/pipewire/pipewire-1.0.0.ebuild b/media-video/pipewire/pipewire-1.0.0-r1.ebuild
index 4b5c9b07aa07..4b5c9b07aa07 100644
--- a/media-video/pipewire/pipewire-1.0.0.ebuild
+++ b/media-video/pipewire/pipewire-1.0.0-r1.ebuild