blob: eaafab17692e97f836fc892b2b8745464f25814d [file] [log] [blame]
From stable-bounces@linux.kernel.org Wed Oct 10 06:15:38 2007
From: Russ Cox <rsc@swtch.com>
Date: Wed, 10 Oct 2007 15:15:12 +0200
Subject: ALSA: fix selector unit bug affecting some USB speakerphones
To: stable@kernel.org
Message-ID: <s5hve9fqffj.wl%tiwai@suse.de>
From: Russ Cox <rsc@swtch.com>
patch 38977e96cb32e658716e11a05ec7f1fc4618e0f3 in mainline.
[ALSA] fix selector unit bug affecting some USB speakerphones
Following the suggestion in this thread:
https://bugs.launchpad.net/ubuntu/+source/alsa-lib/+bug/26683
the correct upper bound on desc[0] is 5 + num_ins not 6 + num_ins,
because the index used later is 5+i, not 6+i.
This change makes my Vosky Chatterbox speakerphone work.
Apparently it also helps with the Minivox MV100.
Signed-off-by: Russ Cox <rsc@swtch.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
sound/usb/usbmixer.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/sound/usb/usbmixer.c
+++ b/sound/usb/usbmixer.c
@@ -1483,7 +1483,7 @@ static int parse_audio_selector_unit(str
struct snd_kcontrol *kctl;
char **namelist;
- if (! num_ins || desc[0] < 6 + num_ins) {
+ if (! num_ins || desc[0] < 5 + num_ins) {
snd_printk(KERN_ERR "invalid SELECTOR UNIT descriptor %d\n", unitid);
return -EINVAL;
}