aboutsummaryrefslogtreecommitdiff
path: root/multimedia
diff options
context:
space:
mode:
authorGleb Popov <arrowd@FreeBSD.org>2022-10-25 17:31:00 +0000
committerGleb Popov <arrowd@FreeBSD.org>2022-10-25 17:32:34 +0000
commitb116213f2401ce2578d398c5e38ae0bdfcfcd209 (patch)
tree86b1354174afa8827536ec2dff68ca386b6f0b64 /multimedia
parentb8480951e844816bc3bd3ff8967afb79c04e3b77 (diff)
downloadports-b116213f2401ce2578d398c5e38ae0bdfcfcd209.tar.gz
ports-b116213f2401ce2578d398c5e38ae0bdfcfcd209.zip
multimedia/pipewire: Add a patch for upstream fixing a crash.
PR: 267264 Reported by: diizzy
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/pipewire/Makefile1
-rw-r--r--multimedia/pipewire/files/patch-filter-chain26
2 files changed, 27 insertions, 0 deletions
diff --git a/multimedia/pipewire/Makefile b/multimedia/pipewire/Makefile
index 1e79cb1a5ec0..2f62688dea1c 100644
--- a/multimedia/pipewire/Makefile
+++ b/multimedia/pipewire/Makefile
@@ -1,5 +1,6 @@
PORTNAME= pipewire
DISTVERSION= 0.3.59
+PORTREVISION= 1
CATEGORIES= multimedia
MASTER_SITES= https://gitlab.freedesktop.org/pipewire/media-session/-/archive/${MEDIA_SESSION_VERSION}/:media_session
DISTFILES= media-session-${MEDIA_SESSION_VERSION}${EXTRACT_SUFX}:media_session
diff --git a/multimedia/pipewire/files/patch-filter-chain b/multimedia/pipewire/files/patch-filter-chain
new file mode 100644
index 000000000000..8d2d41af0349
--- /dev/null
+++ b/multimedia/pipewire/files/patch-filter-chain
@@ -0,0 +1,26 @@
+Pulled from upstream issue https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/2737
+
+diff --git a/src/modules/module-filter-chain.c b/src/modules/module-filter-chain.c
+index 6a899ef5fd776d7e1001ab7ae316ff4bf31a4754..9d65aa938ff441271d6202fc5b8eb8bc57094e17 100644
+--- src/modules/module-filter-chain.c
++++ src/modules/module-filter-chain.c
+@@ -1561,6 +1561,10 @@ static int load_node(struct graph *graph, struct spa_json *json)
+ node->control_port = calloc(desc->n_control, sizeof(struct port));
+ node->notify_port = calloc(desc->n_notify, sizeof(struct port));
+
++ pw_log_info("loaded n_input:%d n_output:%d n_control:%d n_notify:%d",
++ desc->n_input, desc->n_output,
++ desc->n_control, desc->n_notify);
++
+ for (i = 0; i < desc->n_input; i++) {
+ struct port *port = &node->input_port[i];
+ port->node = node;
+@@ -1953,6 +1957,8 @@ static int setup_graph(struct graph *graph, struct spa_json *inputs, struct spa_
+ gh->hndl = &node->hndl[i];
+ gh->desc = d;
+
++ }
++ for (i = 0; i < desc->n_output; i++) {
+ spa_list_for_each(link, &node->output_port[i].link_list, output_link)
+ link->input->node->n_deps--;
+ }