[media] rc: Fix double free in gpio_ir_recv_probe()
authorJesper Juhl <jj@chaosbits.net>
Tue, 25 Nov 2008 13:57:30 +0000 (10:57 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Fri, 21 Dec 2012 18:27:01 +0000 (16:27 -0200)
commite5d85b9ac3133f67460ea5b2d4e33e0473d6eb4b
tree25824286f481b5878e71e345bc2a60eeb0c23300
parent1c12bf8de7e1557afeedd55d9bcec6b6a6d7b5d1
[media] rc: Fix double free in gpio_ir_recv_probe()

At the 'err_request_irq' label, rc_unregister_device(rcdev) frees its
argument. So when we fall through to the 'err_gpio_request' label
further down and call rc_free_device(rcdev) then that's a double free.
Fix that by moving 'rcdev = NULL' from after the call to
rc_free_device() to after rc_unregister_device(). That fixes the
problem since rc_free_device() just does nothing if passed NULL and
there's no further use of 'rcdev' after the call to rc_free_device()
so it's not needed there.

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/rc/gpio-ir-recv.c