summaryrefslogtreecommitdiff
path: root/drivers/input/keyboard/w90p910_keypad.c
diff options
context:
space:
mode:
authorJulia Lawall <julia@diku.dk>2009-08-30 11:30:48 -0700
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2009-08-30 11:55:47 -0700
commit903b9124eae00edf8a9d6491dab60fcda777aabd (patch)
treef7c3b509d24ff30457ee75bd40a5ed58ebfeb771 /drivers/input/keyboard/w90p910_keypad.c
parent9d8340687c524ce61e3c9c76758c4c81303acfc0 (diff)
downloadlwn-903b9124eae00edf8a9d6491dab60fcda777aabd.tar.gz
lwn-903b9124eae00edf8a9d6491dab60fcda777aabd.zip
Input: w90p910_keypad - move a dereference below a NULL test
We should first check whether platform data is NULL or not, before dereferencing it to get the keymap. Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'drivers/input/keyboard/w90p910_keypad.c')
-rw-r--r--drivers/input/keyboard/w90p910_keypad.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/input/keyboard/w90p910_keypad.c b/drivers/input/keyboard/w90p910_keypad.c
index 2d03dd0f9e07..6032def03707 100644
--- a/drivers/input/keyboard/w90p910_keypad.c
+++ b/drivers/input/keyboard/w90p910_keypad.c
@@ -120,7 +120,7 @@ static int __devinit w90p910_keypad_probe(struct platform_device *pdev)
{
const struct w90p910_keypad_platform_data *pdata =
pdev->dev.platform_data;
- const struct matrix_keymap_data *keymap_data = pdata->keymap_data;
+ const struct matrix_keymap_data *keymap_data;
struct w90p910_keypad *keypad;
struct input_dev *input_dev;
struct resource *res;
@@ -132,6 +132,8 @@ static int __devinit w90p910_keypad_probe(struct platform_device *pdev)
return -EINVAL;
}
+ keymap_data = pdata->keymap_data;
+
irq = platform_get_irq(pdev, 0);
if (irq < 0) {
dev_err(&pdev->dev, "failed to get keypad irq\n");