diff options
author | Takashi Iwai <tiwai@suse.de> | 2013-10-28 11:24:23 +0100 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2013-10-29 11:37:11 +0100 |
commit | 9b389a8a022110b4bc055a19b888283544d9eba6 (patch) | |
tree | 28a32f4c5aeb5adb1705a2d198babd213fdffcc9 /sound/usb/6fire | |
parent | 63437313daaf90b372d5b383a8cc6ec8dce185fa (diff) | |
download | linux-rpi-9b389a8a022110b4bc055a19b888283544d9eba6.tar.gz linux-rpi-9b389a8a022110b4bc055a19b888283544d9eba6.tar.bz2 linux-rpi-9b389a8a022110b4bc055a19b888283544d9eba6.zip |
ALSA: 6fire: Fix probe of multiple cards
The probe code of snd-usb-6fire driver overrides the devices[] pointer
wrongly without checking whether it's already occupied or not. This
would screw up the device disconnection later.
Spotted by coverity CID 141423.
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb/6fire')
-rw-r--r-- | sound/usb/6fire/chip.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/usb/6fire/chip.c b/sound/usb/6fire/chip.c index c39c77978468..66edc4a7917f 100644 --- a/sound/usb/6fire/chip.c +++ b/sound/usb/6fire/chip.c @@ -101,7 +101,7 @@ static int usb6fire_chip_probe(struct usb_interface *intf, usb_set_intfdata(intf, chips[i]); mutex_unlock(®ister_mutex); return 0; - } else if (regidx < 0) + } else if (!devices[i] && regidx < 0) regidx = i; } if (regidx < 0) { |