diff options
author | Pete Zaitcev <zaitcev@redhat.com> | 2005-07-29 15:18:34 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-07-29 16:12:54 -0400 |
commit | a9b2e9170bdf1dd27ca4aa9a63048065d252d116 (patch) | |
tree | 048526305102fb981c5a2940bab99e872d6f78a1 /drivers | |
parent | 498f78e6fcf558d0dec31f5648f43426ae16433f (diff) |
[PATCH] USB: hidinput_hid_event() oops fix
It seems that I see a bug in hidinput_hid_event. The check for NULL can never
work, becaue &hidinput->input is nonzero at all times.
Cc: <vojtech@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/usb/input/hid-input.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/usb/input/hid-input.c b/drivers/usb/input/hid-input.c index e071c8eeccee..63a4db721f7e 100644 --- a/drivers/usb/input/hid-input.c +++ b/drivers/usb/input/hid-input.c | |||
@@ -398,11 +398,12 @@ ignore: | |||
398 | 398 | ||
399 | void hidinput_hid_event(struct hid_device *hid, struct hid_field *field, struct hid_usage *usage, __s32 value, struct pt_regs *regs) | 399 | void hidinput_hid_event(struct hid_device *hid, struct hid_field *field, struct hid_usage *usage, __s32 value, struct pt_regs *regs) |
400 | { | 400 | { |
401 | struct input_dev *input = &field->hidinput->input; | 401 | struct input_dev *input; |
402 | int *quirks = &hid->quirks; | 402 | int *quirks = &hid->quirks; |
403 | 403 | ||
404 | if (!input) | 404 | if (!field->hidinput) |
405 | return; | 405 | return; |
406 | input = &field->hidinput->input; | ||
406 | 407 | ||
407 | input_regs(input, regs); | 408 | input_regs(input, regs); |
408 | 409 | ||