From 0b5ab6be5a59a4ad0161bae2ca207a6598584e2c Mon Sep 17 00:00:00 2001 From: Eero Nurkkala Date: Wed, 1 Jul 2020 11:20:33 +0300 Subject: [PATCH] alsa-ucm: disallow null mdev argument into pa_alsa_open_mixer_by_name() It's possible for mdev to be NULL. In this case, an assert is taken in pa_alsa_open_mixer_by_name() with debug builds, and a crash with release builds. However, it's possible to bypass this trouble by taking the error path if mdev is NULL. Reported-by: Jarkko Sankala Signed-off-by: Eero Nurkkala --- src/modules/alsa/alsa-ucm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/alsa/alsa-ucm.c b/src/modules/alsa/alsa-ucm.c index 1dfb0e08b..295286555 100644 --- a/src/modules/alsa/alsa-ucm.c +++ b/src/modules/alsa/alsa-ucm.c @@ -942,7 +942,7 @@ static void probe_volumes(pa_hashmap *hash, bool is_sink, snd_pcm_t *pcm_handle, mdev = mdev2; } - if (!(mixer_handle = pa_alsa_open_mixer_by_name(mixers, mdev, true))) { + if (mdev == NULL || !(mixer_handle = pa_alsa_open_mixer_by_name(mixers, mdev, true))) { pa_log_error("Failed to find a working mixer device (%s).", mdev); goto fail; }