diff options
author | Takashi Iwai <tiwai@suse.de> | 2012-06-26 14:54:32 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2012-06-26 14:56:20 +0200 |
commit | ee48df57c920ab876dd8cf0dcfe5b8893b98e934 (patch) | |
tree | b41a7fde822cf3ba5ea05af6640f48d8b645e745 /sound/pci/hda/patch_conexant.c | |
parent | befae82e2906cb7155020876a531b0b8c6c8d8c8 (diff) | |
download | op-kernel-dev-ee48df57c920ab876dd8cf0dcfe5b8893b98e934.zip op-kernel-dev-ee48df57c920ab876dd8cf0dcfe5b8893b98e934.tar.gz |
ALSA: hda - Fix memory leaks in Realtek & Conexant codec parsers
When moved to the helper code, forgot to release the verb arrays.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/patch_conexant.c')
-rw-r--r-- | sound/pci/hda/patch_conexant.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sound/pci/hda/patch_conexant.c b/sound/pci/hda/patch_conexant.c index 2af0868..2bf99fc 100644 --- a/sound/pci/hda/patch_conexant.c +++ b/sound/pci/hda/patch_conexant.c @@ -445,8 +445,10 @@ static int conexant_init(struct hda_codec *codec) static void conexant_free(struct hda_codec *codec) { + struct conexant_spec *spec = codec->spec; + snd_hda_gen_free(&spec->gen); snd_hda_detach_beep_device(codec); - kfree(codec->spec); + kfree(spec); } static const struct snd_kcontrol_new cxt_capture_mixers[] = { @@ -4498,6 +4500,7 @@ static int patch_conexant_auto(struct hda_codec *codec) if (!spec) return -ENOMEM; codec->spec = spec; + snd_hda_gen_init(&spec->gen); switch (codec->vendor_id) { case 0x14f15045: |