From 539494253547d078089cc15490e83f6e5f2e7213 Mon Sep 17 00:00:00 2001 From: Taylor Hutt Date: Tue, 17 May 2011 18:03:54 -0700 Subject: [PATCH] ASoC: Max98095: Move existing NULL check before pointer dereference. Visual inspection shows that max98095_put_eq_enum() and max98095_put_bq_enum() each have a possible NULL deref of 'pdata'. This change moves the NULL check above the use. Signed-off-by: Taylor Hutt Acked-by: Peter Hsiang Acked-by: Liam Girdwood Signed-off-by: Mark Brown --- sound/soc/codecs/max98095.c | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/sound/soc/codecs/max98095.c b/sound/soc/codecs/max98095.c index a6cc94e..e1d282d 100644 --- a/sound/soc/codecs/max98095.c +++ b/sound/soc/codecs/max98095.c @@ -1872,16 +1872,14 @@ static int max98095_put_eq_enum(struct snd_kcontrol *kcontrol, BUG_ON(channel > 1); - cdata = &max98095->dai[channel]; + if (!pdata || !max98095->eq_textcnt) + return 0; if (sel >= pdata->eq_cfgcnt) return -EINVAL; + cdata = &max98095->dai[channel]; cdata->eq_sel = sel; - - if (!pdata || !max98095->eq_textcnt) - return 0; - fs = cdata->rate; /* Find the selected configuration with nearest sample rate */ @@ -2020,16 +2018,14 @@ static int max98095_put_bq_enum(struct snd_kcontrol *kcontrol, BUG_ON(channel > 1); - cdata = &max98095->dai[channel]; + if (!pdata || !max98095->bq_textcnt) + return 0; if (sel >= pdata->bq_cfgcnt) return -EINVAL; + cdata = &max98095->dai[channel]; cdata->bq_sel = sel; - - if (!pdata || !max98095->bq_textcnt) - return 0; - fs = cdata->rate; /* Find the selected configuration with nearest sample rate */ -- 2.7.4