diff options
author | Wei Yongjun <weiyongjun1@huawei.com> | 2016-09-21 15:12:05 +0000 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2016-09-22 11:10:06 +0200 |
commit | 46a41b512f6800b531e94bdf5f1ca0e226492d91 (patch) | |
tree | 76b3e8992d478809ad03cb8ee999bad8eb53c14b /drivers/hid | |
parent | 3da30bfc0b0a572a4f977a586edf34cf3dd503c3 (diff) |
HID: alps: fix error return code in alps_input_configured()
Fix to return a negative error code from the error handling
case instead of 0, as done elsewhere in this function.
While at it, remove redundant input_free_device(NULL) call.
[jkosina@suse.cz: ammend changelog]
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/hid')
-rw-r--r-- | drivers/hid/hid-alps.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/hid/hid-alps.c b/drivers/hid/hid-alps.c index 048befde295a..0c18d473a5d8 100644 --- a/drivers/hid/hid-alps.c +++ b/drivers/hid/hid-alps.c @@ -383,7 +383,7 @@ static int alps_input_configured(struct hid_device *hdev, struct hid_input *hi) input2 = input_allocate_device(); if (!input2) { - input_free_device(input2); + ret = -ENOMEM; goto exit; } @@ -425,7 +425,8 @@ static int alps_input_configured(struct hid_device *hdev, struct hid_input *hi) __set_bit(INPUT_PROP_POINTER, input2->propbit); __set_bit(INPUT_PROP_POINTING_STICK, input2->propbit); - if (input_register_device(data->input2)) { + ret = input_register_device(data->input2); + if (ret) { input_free_device(input2); goto exit; } |