From: Dan Carpenter Date: Thu, 12 Aug 2010 07:47:07 +0000 (-0300) Subject: V4L/DVB: IR: ir-raw-event: null pointer dereference X-Git-Tag: v2.6.36-rc8~32^2~33 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=028816bc85db5ac6a562c2aff2113c7480d67919;p=profile%2Fivi%2Fkernel-x86-ivi.git V4L/DVB: IR: ir-raw-event: null pointer dereference The original code dereferenced ir->raw after freeing it and setting it to NULL. Signed-off-by: Dan Carpenter Acked-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/IR/ir-raw-event.c b/drivers/media/IR/ir-raw-event.c index 43094e7..8e0e1b1 100644 --- a/drivers/media/IR/ir-raw-event.c +++ b/drivers/media/IR/ir-raw-event.c @@ -279,9 +279,11 @@ int ir_raw_event_register(struct input_dev *input_dev) "rc%u", (unsigned int)ir->devno); if (IS_ERR(ir->raw->thread)) { + int ret = PTR_ERR(ir->raw->thread); + kfree(ir->raw); ir->raw = NULL; - return PTR_ERR(ir->raw->thread); + return ret; } mutex_lock(&ir_raw_handler_lock);