mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-05 08:26:59 +00:00
ALSA: usb-audio: Fix memory leak in FTU quirk
M-audio FastTrack Ultra quirk doesn't release the kzalloc'ed memory. This patch adds the private_free callback to release it properly. Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
b456591346
commit
1a290581de
1 changed files with 6 additions and 0 deletions
|
@ -885,6 +885,11 @@ static int snd_ftu_eff_switch_put(struct snd_kcontrol *kctl,
|
||||||
return changed;
|
return changed;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void kctl_private_value_free(struct snd_kcontrol *kctl)
|
||||||
|
{
|
||||||
|
kfree((void *)kctl->private_value);
|
||||||
|
}
|
||||||
|
|
||||||
static int snd_ftu_create_effect_switch(struct usb_mixer_interface *mixer,
|
static int snd_ftu_create_effect_switch(struct usb_mixer_interface *mixer,
|
||||||
int validx, int bUnitID)
|
int validx, int bUnitID)
|
||||||
{
|
{
|
||||||
|
@ -919,6 +924,7 @@ static int snd_ftu_create_effect_switch(struct usb_mixer_interface *mixer,
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
kctl->private_free = kctl_private_value_free;
|
||||||
err = snd_ctl_add(mixer->chip->card, kctl);
|
err = snd_ctl_add(mixer->chip->card, kctl);
|
||||||
if (err < 0)
|
if (err < 0)
|
||||||
return err;
|
return err;
|
||||||
|
|
Loading…
Reference in a new issue