summaryrefslogtreecommitdiffstats
path: root/drivers/char/scan_keyb.c
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2000-08-28 22:00:09 +0000
committerRalf Baechle <ralf@linux-mips.org>2000-08-28 22:00:09 +0000
commit1a1d77dd589de5a567fa95e36aa6999c704ceca4 (patch)
tree141e31f89f18b9fe0831f31852e0435ceaccafc5 /drivers/char/scan_keyb.c
parentfb9c690a18b3d66925a65b17441c37fa14d4370b (diff)
Merge with 2.4.0-test7.
Diffstat (limited to 'drivers/char/scan_keyb.c')
-rw-r--r--drivers/char/scan_keyb.c24
1 files changed, 13 insertions, 11 deletions
diff --git a/drivers/char/scan_keyb.c b/drivers/char/scan_keyb.c
index 1936e0b6e..f2435e9ec 100644
--- a/drivers/char/scan_keyb.c
+++ b/drivers/char/scan_keyb.c
@@ -82,18 +82,21 @@ int register_scan_keyboard(void (*scan)(unsigned char *buffer),
{
struct scan_keyboard *kbd;
- if((kbd=kmalloc(sizeof(struct scan_keyboard), GFP_KERNEL))==NULL)
+ kbd = kmalloc(sizeof(struct scan_keyboard), GFP_KERNEL);
+ if (kbd == NULL)
goto error_out;
kbd->scan=scan;
kbd->table=table;
kbd->length=length;
- kbd->s0=kbd->s1=NULL;
- if((kbd->s0=kmalloc(length, GFP_KERNEL))==NULL)
- goto error_mem_free;
- if((kbd->s1=kmalloc(length, GFP_KERNEL))==NULL)
- goto error_mem_free;
+ kbd->s0 = kmalloc(length, GFP_KERNEL);
+ if (kbd->s0 == NULL)
+ goto error_free_kbd;
+
+ kbd->s1 = kmalloc(length, GFP_KERNEL);
+ if (kbd->s1 == NULL)
+ goto error_free_s0;
kbd->scan(kbd->s0);
kbd->scan(kbd->s1);
@@ -103,11 +106,10 @@ int register_scan_keyboard(void (*scan)(unsigned char *buffer),
return 0;
- error_mem_free:
- if(kbd->s0)
- kfree(kbd->s0);
- if(kbd->s1)
- kfree(kbd->s1);
+ error_free_s0:
+ kfree(kbd->s0);
+
+ error_free_kbd:
kfree(kbd);
error_out: