Add patch to fix default device.
This commit is contained in:
parent
a61645b785
commit
3b984e5e8d
47
0001-default-nodes-handle-nodes-without-Routes.patch
Normal file
47
0001-default-nodes-handle-nodes-without-Routes.patch
Normal file
@ -0,0 +1,47 @@
|
||||
From 6d4c8b732dfa143652421368f322ffa67942f438 Mon Sep 17 00:00:00 2001
|
||||
From: Wim Taymans <wtaymans@redhat.com>
|
||||
Date: Fri, 14 Jan 2022 16:28:48 +0100
|
||||
Subject: [PATCH] default-nodes: handle nodes without Routes
|
||||
|
||||
When a node has not part of any EnumRoute, we must assume it is
|
||||
available.
|
||||
|
||||
Fixes selection of Pro Audio nodes as default nodes.
|
||||
---
|
||||
modules/module-default-nodes.c | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/modules/module-default-nodes.c b/modules/module-default-nodes.c
|
||||
index ac9a87b..5eddacb 100644
|
||||
--- a/modules/module-default-nodes.c
|
||||
+++ b/modules/module-default-nodes.c
|
||||
@@ -108,6 +108,7 @@ node_has_available_routes (WpDefaultNodes * self, WpNode *node)
|
||||
gint dev_id = dev_id_str ? atoi (dev_id_str) : -1;
|
||||
gint cpd = cpd_str ? atoi (cpd_str) : -1;
|
||||
g_autoptr (WpDevice) device = NULL;
|
||||
+ gint found = 0;
|
||||
|
||||
if (dev_id == -1 || cpd == -1)
|
||||
return TRUE;
|
||||
@@ -168,6 +169,7 @@ node_has_available_routes (WpDefaultNodes * self, WpNode *node)
|
||||
for (; wp_iterator_next (it, &v); g_value_unset (&v)) {
|
||||
gint32 *d = (gint32 *)g_value_get_pointer (&v);
|
||||
if (d && *d == cpd) {
|
||||
+ found++;
|
||||
if (route_avail != SPA_PARAM_AVAILABILITY_no)
|
||||
return TRUE;
|
||||
}
|
||||
@@ -175,6 +177,10 @@ node_has_available_routes (WpDefaultNodes * self, WpNode *node)
|
||||
}
|
||||
}
|
||||
}
|
||||
+ /* The node is part of a profile without routes so we assume it
|
||||
+ * is available. This can happen for Pro Audio profiles */
|
||||
+ if (found == 0)
|
||||
+ return TRUE;
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
--
|
||||
2.31.1
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
Name: wireplumber
|
||||
Version: 0.4.7
|
||||
Release: 1%{?dist}
|
||||
Release: 2%{?dist}
|
||||
Summary: A modular session/policy manager for PipeWire
|
||||
|
||||
License: MIT
|
||||
@ -8,6 +8,7 @@ URL: https://pipewire.pages.freedesktop.org/wireplumber/
|
||||
Source0: https://gitlab.freedesktop.org/pipewire/%{name}/-/archive/%{version}/%{name}-%{version}.tar.bz2
|
||||
|
||||
## upstream patches
|
||||
Patch0001: 0001-default-nodes-handle-nodes-without-Routes.patch
|
||||
|
||||
## upstreamable patches
|
||||
|
||||
@ -115,6 +116,9 @@ fi
|
||||
%{_datadir}/gir-1.0/Wp-0.4.gir
|
||||
|
||||
%changelog
|
||||
* Fri Jan 13 2022 Wim Taymans <wim.taymans@redhat.com> - 0.4.7-2
|
||||
- Add patch to fix default device.
|
||||
|
||||
* Thu Jan 13 2022 Wim Taymans <wim.taymans@redhat.com> - 0.4.7-1
|
||||
- wireplumber 0.4.7
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user