summaryrefslogtreecommitdiffstats
path: root/drivers/media/video/davinci/vpif_display.c
diff options
context:
space:
mode:
authorJulia Lawall <julia@diku.dk>2010-03-12 06:15:32 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2010-05-18 00:47:16 -0300
commit728385c4d31469b9124953f36fb42015435466c9 (patch)
tree3c761c8d14c1983a24fca0e5bbc1443a97622cf8 /drivers/media/video/davinci/vpif_display.c
parent4e1af31aaaa8cc4a5cc1d894bdf04dfc7450d47f (diff)
downloadlinux-728385c4d31469b9124953f36fb42015435466c9.tar.gz
linux-728385c4d31469b9124953f36fb42015435466c9.tar.bz2
linux-728385c4d31469b9124953f36fb42015435466c9.zip
V4L/DVB: drivers/media/video: move dereference after NULL test
In quickcam_messenger.c, if the NULL test on uvd is needed, then the dereference should be after the NULL test. In vpif_display.c, std_info is initialized to the address of a structure field. This seems unlikely to be NULL. Test std_info->stdid instead. In saa7134-alsa.c, the function is only called from one place, where the chip argument has already been dereferenced. On the other hand, if it should be kept, then card should be initialized after it. 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> Acked-by: Muralidharan Karicheri <m-karicheri2@ti.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/davinci/vpif_display.c')
-rw-r--r--drivers/media/video/davinci/vpif_display.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/media/video/davinci/vpif_display.c b/drivers/media/video/davinci/vpif_display.c
index 13c3a1b97760..e5bab3d0d53f 100644
--- a/drivers/media/video/davinci/vpif_display.c
+++ b/drivers/media/video/davinci/vpif_display.c
@@ -384,7 +384,7 @@ static int vpif_get_std_info(struct channel_obj *ch)
int index;
std_info->stdid = vid_ch->stdid;
- if (!std_info)
+ if (!std_info->stdid)
return -1;
for (index = 0; index < ARRAY_SIZE(ch_params); index++) {