diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c index f7eb0d2f797b..1f7eb3816cd7 100644 --- a/sound/usb/mixer.c +++ b/sound/usb/mixer.c @@ -2112,6 +2112,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;