diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c index 64b90b8ec661..248a4bd82397 100644 --- a/sound/usb/mixer.c +++ b/sound/usb/mixer.c @@ -2178,6 +2178,8 @@ static int parse_audio_selector_unit(struct mixer_build *state, int unitid, kctl = snd_ctl_new1(&mixer_selectunit_ctl, cval); if (! kctl) { usb_audio_err(state->chip, "cannot malloc kcontrol\n"); + for (i = 0; i < desc->bNrInPins; i++) + kfree(namelist[i]); kfree(namelist); kfree(cval); return -ENOMEM;