[media] drivers/media/video/davinci/vpbe_display.c: eliminate a null pointer dereference
authorJulia Lawall <julia@diku.dk>
Fri, 28 Oct 2011 22:58:17 +0000 (19:58 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 7 Nov 2011 15:13:15 +0000 (13:13 -0200)
commit49a0513c1fca2c43b14416f3f40220fa01ab5e39
tree8ef2abeddaf3dd32b6e7156411d9bea80a07f92b
parent0a4524d726cd4d109c57fc194a55ff0a9e4df0e9
[media] drivers/media/video/davinci/vpbe_display.c: eliminate a null pointer dereference

In the original code, probe_out could be reached when res was null and then
when the irq had not yet been requested.  In those cases, the call to
free_irq is not needed, so move probe_out down and introduce a new label
for the case where calling free_irq is useful.

The semantic match that finds this problem is as follows:

// <smpl>
@r@
expression E, E1;
identifier f;
statement S1,S2,S3;
@@

if (E == NULL)
{
  ... when != if (E == NULL || ...) S1 else S2
      when != E = E1
*E->f
  ... when any
  return ...;
}
else S3
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/davinci/vpbe_display.c