[PATCH] drivers/input/keyboard: Move a dereference below a NULL test

From: Julia Lawall
Date: Sun Aug 30 2009 - 05:18:24 EST


From: Julia Lawall <julia@xxxxxxx>

If the NULL test is necessary, then the dereference should be moved below
the NULL test.

The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/).

// <smpl>
@@
type T;
expression E;
identifier i,fld;
statement S;
@@

- T i = E->fld;
+ T i;
... when != E
when != i
if (E == NULL) S
+ i = E->fld;
// </smpl>

Signed-off-by: Julia Lawall <julia@xxxxxxx>

---
drivers/input/keyboard/w90p910_keypad.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff -u -p a/drivers/input/keyboard/w90p910_keypad.c b/drivers/input/keyboard/w90p910_keypad.c
--- a/drivers/input/keyboard/w90p910_keypad.c
+++ b/drivers/input/keyboard/w90p910_keypad.c
@@ -120,7 +120,7 @@ static int __devinit w90p910_keypad_prob
{
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,7 @@ static int __devinit w90p910_keypad_prob
dev_err(&pdev->dev, "no platform data defined\n");
return -EINVAL;
}
+ keymap_data = pdata->keymap_data;

irq = platform_get_irq(pdev, 0);
if (irq < 0) {
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/