summaryrefslogtreecommitdiff
path: root/drivers/hid/hid-alps.c
diff options
context:
space:
mode:
authorWei Yongjun <weiyongjun1@huawei.com>2016-09-21 18:12:05 +0300
committerJiri Kosina <jkosina@suse.cz>2016-09-22 12:10:06 +0300
commit46a41b512f6800b531e94bdf5f1ca0e226492d91 (patch)
tree76b3e8992d478809ad03cb8ee999bad8eb53c14b /drivers/hid/hid-alps.c
parent3da30bfc0b0a572a4f977a586edf34cf3dd503c3 (diff)
downloadlinux-46a41b512f6800b531e94bdf5f1ca0e226492d91.tar.xz
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/hid-alps.c')
-rw-r--r--drivers/hid/hid-alps.c5
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;
}