public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [2.6 patch] usb/input/keyspan_remote.c: don't use an uninitialized variable
@ 2006-03-25 17:12 Adrian Bunk
  2006-03-25 17:37 ` Adrian Bunk
  0 siblings, 1 reply; 2+ messages in thread
From: Adrian Bunk @ 2006-03-25 17:12 UTC (permalink / raw)
  To: greg; +Cc: linux-usb-devel, linux-kernel

gcc reported the following:

<--  snip  -->

...
  CC      drivers/usb/input/keyspan_remote.o
drivers/usb/input/keyspan_remote.c: In function 'keyspan_irq_recv':
drivers/usb/input/keyspan_remote.c:186: warning: 'message.toggle' may be used uninitialized in this function
...

<--  snip  -->


gcc is right, there is an error case where this actually happens.

What about this patch that returns in this error case?

Signed-off-by: Darren Jenkins <darrenrjenkins@gmail.com>

--- linux-2.6.16-mm1-full/drivers/usb/input/keyspan_remote.c.old	2006-03-25 15:44:56.000000000 +0100
+++ linux-2.6.16-mm1-full/drivers/usb/input/keyspan_remote.c	2006-03-25 15:45:48.000000000 +0100
@@ -285,30 +285,31 @@ static void keyspan_check_data(struct us
 				return;
 			}
 		}
 
 		keyspan_load_tester(remote, 6);
 		if ((remote->data.tester & ZERO_MASK) == ZERO) {
 			message.toggle = 0;
 			remote->data.tester = remote->data.tester >> 5;
 			remote->data.bits_left -= 5;
 		} else if ((remote->data.tester & ONE_MASK) == ONE) {
 			message.toggle = 1;
 			remote->data.tester = remote->data.tester >> 6;
 			remote->data.bits_left -= 6;
 		} else {
 			err("%s - Error in message, invalid toggle.\n", __FUNCTION__);
+			return;
 		}
 
 		keyspan_load_tester(remote, 5);
 		if ((remote->data.tester & STOP_MASK) == STOP) {
 			remote->data.tester = remote->data.tester >> 5;
 			remote->data.bits_left -= 5;
 		} else {
 			err("Bad message recieved, no stop bit found.\n");
 		}
 
 		dev_dbg(&remote->udev->dev,
 			"%s found valid message: system: %d, button: %d, toggle: %d\n",
 			__FUNCTION__, message.system, message.button, message.toggle);
 
 		if (message.toggle != remote->toggle) {


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [2.6 patch] usb/input/keyspan_remote.c: don't use an uninitialized variable
  2006-03-25 17:12 [2.6 patch] usb/input/keyspan_remote.c: don't use an uninitialized variable Adrian Bunk
@ 2006-03-25 17:37 ` Adrian Bunk
  0 siblings, 0 replies; 2+ messages in thread
From: Adrian Bunk @ 2006-03-25 17:37 UTC (permalink / raw)
  To: greg; +Cc: linux-usb-devel, linux-kernel

On Sat, Mar 25, 2006 at 06:12:14PM +0100, Adrian Bunk wrote:
>...
> Signed-off-by: Darren Jenkins <darrenrjenkins@gmail.com>
>...

Cut'n'paste error of the year...

Darren Jenkins was in no way involved with this patch, this should have 
been:

Signed-off-by: Adrian Bunk <bunk@stusta.de>

cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2006-03-25 17:37 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-03-25 17:12 [2.6 patch] usb/input/keyspan_remote.c: don't use an uninitialized variable Adrian Bunk
2006-03-25 17:37 ` Adrian Bunk

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox