summaryrefslogtreecommitdiffstats
path: root/sound/usb/clock.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2021-05-20 14:37:42 +0200
committerTakashi Iwai <tiwai@suse.de>2021-05-21 16:16:21 +0200
commitbe22db77dc50be6d9cf2b20ab689706c9031c054 (patch)
treee052714e4349c71531856f9a0a7df9dacf303369 /sound/usb/clock.c
parentALSA: firewire-lib: change waking up timing to process packets (diff)
downloadlinux-be22db77dc50be6d9cf2b20ab689706c9031c054.tar.xz
linux-be22db77dc50be6d9cf2b20ab689706c9031c054.zip
ALSA: usb-audio: Fix uninitialized variable at __uac_clock_find_source()
The cur variable indicating the currently selected clock source can be theoretically used as uninitialized after the recent commit 481f17c41803 ("ALSA: usb-audio: Handle error for the current selector gracefully"). For addressing it, initialize it before use. Also, one place seems setting 0 to a wrong variable ret, instead of cur; otherwise it makes little sense. Since the initialization is done beforehand, we can get rid of this line, too. Fixes: 481f17c41803 ("ALSA: usb-audio: Handle error for the current selector gracefully") Reported-by: Colin Ian King <colin.king@canonical.com> Link: https://lore.kernel.org/r/4b261d68-f53f-240d-2d8a-2f88b337849d@canonical.com Link: https://lore.kernel.org/r/s5hfsyhh97t.wl-tiwai@suse.de Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb/clock.c')
-rw-r--r--sound/usb/clock.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/usb/clock.c b/sound/usb/clock.c
index 772478c725c2..0afae839d295 100644
--- a/sound/usb/clock.c
+++ b/sound/usb/clock.c
@@ -290,6 +290,7 @@ static int __uac_clock_find_source(struct snd_usb_audio *chip,
pins = GET_VAL(selector, proto, bNrInPins);
clock_id = GET_VAL(selector, proto, bClockID);
sources = GET_VAL(selector, proto, baCSourceID);
+ cur = 0;
if (pins == 1) {
ret = 1;
@@ -314,7 +315,6 @@ static int __uac_clock_find_source(struct snd_usb_audio *chip,
if (!chip->autoclock)
return -EINVAL;
- ret = 0;
goto find_others;
}