From 66b7881ef37a6f282822ebad8b5936330559992e Mon Sep 17 00:00:00 2001 From: Dan Carpenter Date: Fri, 12 Nov 2010 08:04:43 +0300 Subject: [PATCH] --- yaml --- r: 222842 b: refs/heads/master c: ebba26f4a8d0c137a2d365b6bded2a0d7fcd1d06 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/staging/quickstart/quickstart.c | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 3cc6ab70372e..7877daafe668 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 5fb5d38fc268b8285125b213b9b2ded9322a371c +refs/heads/master: ebba26f4a8d0c137a2d365b6bded2a0d7fcd1d06 diff --git a/trunk/drivers/staging/quickstart/quickstart.c b/trunk/drivers/staging/quickstart/quickstart.c index d746715d3d89..d83bec876d2e 100644 --- a/trunk/drivers/staging/quickstart/quickstart.c +++ b/trunk/drivers/staging/quickstart/quickstart.c @@ -355,7 +355,6 @@ static int quickstart_acpi_remove(struct acpi_device *device, int type) static void quickstart_exit(void) { input_unregister_device(quickstart_input); - input_free_device(quickstart_input); device_remove_file(&pf_device->dev, &dev_attr_pressed_button); device_remove_file(&pf_device->dev, &dev_attr_buttons); @@ -375,6 +374,7 @@ static int __init quickstart_init_input(void) { struct quickstart_btn **ptr = &quickstart_data.btn_lst; int count; + int ret; quickstart_input = input_allocate_device(); @@ -391,7 +391,13 @@ static int __init quickstart_init_input(void) ptr = &((*ptr)->next); } - return input_register_device(quickstart_input); + ret = input_register_device(quickstart_input); + if (ret) { + input_free_device(quickstart_input); + return ret; + } + + return 0; } static int __init quickstart_init(void)