]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
ALSA: hda - Fix memory leaks at error path in patch_cirrus.c
authorTakashi Iwai <tiwai@suse.de>
Wed, 10 Oct 2012 06:50:35 +0000 (08:50 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 21 Oct 2012 16:32:39 +0000 (09:32 -0700)
commit c5e0b6dbad9b4d18c561af90b384d02373f1c994 upstream.

The proper destructor should be called at the error path.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/pci/hda/patch_cirrus.c

index 0c4c1a61b3789f590d62ea6a2e8348417746cd95..cc31346ce9b443b1a9f1b9a58c0a0a9b7b4a918e 100644 (file)
@@ -1417,7 +1417,7 @@ static int patch_cs420x(struct hda_codec *codec)
        return 0;
 
  error:
-       kfree(codec->spec);
+       cs_free(codec);
        codec->spec = NULL;
        return err;
 }
@@ -1974,7 +1974,7 @@ static int patch_cs4210(struct hda_codec *codec)
        return 0;
 
  error:
-       kfree(codec->spec);
+       cs_free(codec);
        codec->spec = NULL;
        return err;
 }
@@ -1999,7 +1999,7 @@ static int patch_cs4213(struct hda_codec *codec)
        return 0;
 
  error:
-       kfree(codec->spec);
+       cs_free(codec);
        codec->spec = NULL;
        return err;
 }