diff options
author | Julia Lawall <julia@diku.dk> | 2009-10-17 02:32:56 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2009-10-19 11:12:35 -0400 |
commit | 4f066173fe8deb8874f41917e5d26ea2e0c46e3b (patch) | |
tree | 95bffc1d1120c0fb65b932416f6c95ac319c3589 /sound/soc/soc-jack.c | |
parent | 8d567b6b441bfcc20e8cbebc0dc376b2e280cd88 (diff) |
ASoC: Move dereference after NULL test
If the NULL test on jack is needed, then the derefernce should be after the
NULL test.
A simplified version of the semantic match that detects this problem is as
follows (http://coccinelle.lip6.fr/):
// <smpl>
@match exists@
expression x, E;
identifier fld;
@@
* x->fld
... when != \(x = E\|&x\)
* x == NULL
// </smpl>
Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/soc-jack.c')
-rw-r--r-- | sound/soc/soc-jack.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/soc/soc-jack.c b/sound/soc/soc-jack.c index 1d455ab79490..12124149601e 100644 --- a/sound/soc/soc-jack.c +++ b/sound/soc/soc-jack.c | |||
@@ -58,7 +58,7 @@ EXPORT_SYMBOL_GPL(snd_soc_jack_new); | |||
58 | */ | 58 | */ |
59 | void snd_soc_jack_report(struct snd_soc_jack *jack, int status, int mask) | 59 | void snd_soc_jack_report(struct snd_soc_jack *jack, int status, int mask) |
60 | { | 60 | { |
61 | struct snd_soc_codec *codec = jack->card->codec; | 61 | struct snd_soc_codec *codec; |
62 | struct snd_soc_jack_pin *pin; | 62 | struct snd_soc_jack_pin *pin; |
63 | int enable; | 63 | int enable; |
64 | int oldstatus; | 64 | int oldstatus; |
@@ -67,6 +67,7 @@ void snd_soc_jack_report(struct snd_soc_jack *jack, int status, int mask) | |||
67 | WARN_ON_ONCE(!jack); | 67 | WARN_ON_ONCE(!jack); |
68 | return; | 68 | return; |
69 | } | 69 | } |
70 | codec = jack->card->codec; | ||
70 | 71 | ||
71 | mutex_lock(&codec->mutex); | 72 | mutex_lock(&codec->mutex); |
72 | 73 | ||