From 063a1d350fad1cb6fac28dbffe26a7e805626cb2 Mon Sep 17 00:00:00 2001 From: David Henningsson Date: Tue, 17 Nov 2015 15:10:34 +0100 Subject: [PATCH] module-switch-on-port-available: Use input and output names In case input or output names are filled in, we can use this to get a better match in the profile_good_for_input/output functions instead of guessing based on number of sources and channels. Signed-off-by: David Henningsson --- src/modules/module-switch-on-port-available.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/modules/module-switch-on-port-available.c b/src/modules/module-switch-on-port-available.c index eb8f2d7bb..8de68a3ec 100644 --- a/src/modules/module-switch-on-port-available.c +++ b/src/modules/module-switch-on-port-available.c @@ -23,6 +23,7 @@ #endif #include +#include #include #include @@ -34,6 +35,9 @@ static bool profile_good_for_output(pa_card_profile *profile) { pa_assert(profile); + if (!pa_safe_streq(profile->card->active_profile->input_name, profile->input_name)) + return false; + if (profile->card->active_profile->n_sources != profile->n_sources) return false; @@ -55,6 +59,9 @@ static bool profile_good_for_output(pa_card_profile *profile) { static bool profile_good_for_input(pa_card_profile *profile) { pa_assert(profile); + if (!pa_safe_streq(profile->card->active_profile->output_name, profile->output_name)) + return false; + if (profile->card->active_profile->n_sinks != profile->n_sinks) return false;