From: Axel Lin Date: Fri, 23 Jul 2010 05:53:43 +0000 (+0000) Subject: ASoC: ad1836: fix a memory leak if another ad1836 is registered X-Git-Tag: v2.6.36-rc1~493^2~1^2~12 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=fd3c8ac9cb653f7e3122bba9bc7beaad6062b7f4;p=karo-tx-linux.git ASoC: ad1836: fix a memory leak if another ad1836 is registered ad1836 is allocated in ad1836_spi_probe() but is not freed if ad1836_register() return -EINVAL (if another ad1836 is registered). Signed-off-by: Axel Lin Acked-by: Barry Song <21cnbao@gmail.com> Acked-by: Liam Girdwood Signed-off-by: Mark Brown --- diff --git a/sound/soc/codecs/ad1836.c b/sound/soc/codecs/ad1836.c index 217538423225..a01006c8c606 100644 --- a/sound/soc/codecs/ad1836.c +++ b/sound/soc/codecs/ad1836.c @@ -272,6 +272,7 @@ static int ad1836_register(struct ad1836_priv *ad1836) if (ad1836_codec) { dev_err(codec->dev, "Another ad1836 is registered\n"); + kfree(ad1836); return -EINVAL; }