From: Dan Carpenter Date: Fri, 7 Sep 2012 06:47:41 +0000 (+0300) Subject: HID: picoLCD: fix a NULL test in picolcd_raw_cir() X-Git-Tag: firefly_0821_release~3680^2~2006^2~2^4~5 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=02d9be1aa6e93f4819f230a1d570e2ff415fa294;p=firefly-linux-kernel-4.4.55.git HID: picoLCD: fix a NULL test in picolcd_raw_cir() Smatch complains that the NULL checking in this function is not consistent and could lead to a NULL dereference. The comments say that we should return here if rc_dev is NULL so I've changed the test to match the comment. Signed-off-by: Dan Carpenter Reviewed-by: Bruno Prémont Signed-off-by: Jiri Kosina --- diff --git a/drivers/hid/hid-picolcd_cir.c b/drivers/hid/hid-picolcd_cir.c index 14c5ce0e71bc..13ca9191b630 100644 --- a/drivers/hid/hid-picolcd_cir.c +++ b/drivers/hid/hid-picolcd_cir.c @@ -51,7 +51,7 @@ int picolcd_raw_cir(struct picolcd_data *data, /* ignore if rc_dev is NULL or status is shunned */ spin_lock_irqsave(&data->lock, flags); - if (data->rc_dev && (data->status & PICOLCD_CIR_SHUN)) { + if (!data->rc_dev || (data->status & PICOLCD_CIR_SHUN)) { spin_unlock_irqrestore(&data->lock, flags); return 1; }