From: Jaroslav Kysela Date: Tue, 1 Jun 2021 15:47:42 +0000 (+0200) Subject: alsactl: fix the nested iteration X-Git-Tag: v1.2.5.1~15 X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=78212445de4c8e07873cbc7dff2abcacd031f151;p=alsa-utils.git alsactl: fix the nested iteration There may be nested iterations for hw: card names. Handle this card name in snd_card_iterator_sinit(). BugLink: https://github.com/alsa-project/alsa-lib/issues/142 Fixes: eefc2c6 ("alsactl: use card iterator functions for all card loops") Signed-off-by: Jaroslav Kysela --- diff --git a/alsactl/utils.c b/alsactl/utils.c index c79fd95..881b505 100644 --- a/alsactl/utils.c +++ b/alsactl/utils.c @@ -247,6 +247,8 @@ int snd_card_iterator_sinit(struct snd_card_iterator *iter, const char *cardname int cardno = -1; if (cardname) { + if (strncmp(cardname, "hw:", 3) == 0) + cardname += 3; cardno = snd_card_get_index(cardname); if (cardno < 0) { error("Cannot find soundcard '%s'...", cardname);