forked from luck/tmp_suning_uos_patched
Bluetooth: hidp: Only free input device if failed register
When an hidp connection is added for a boot protocol input device, only free the allocated device if device registration fails. Subsequent failures should only unregister the device (the input device api documents that unregister will also free the allocated device). Signed-off-by: Peter Hurley <peter@hurleysoftware.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
This commit is contained in:
parent
1c97e94c0b
commit
615aedd6e5
@ -842,6 +842,8 @@ static int hidp_setup_input(struct hidp_session *session,
|
||||
|
||||
err = input_register_device(input);
|
||||
if (err < 0) {
|
||||
input_free_device(input);
|
||||
session->input = NULL;
|
||||
hci_conn_put_device(session->conn);
|
||||
return err;
|
||||
}
|
||||
@ -1089,7 +1091,6 @@ int hidp_add_connection(struct hidp_connadd_req *req, struct socket *ctrl_sock,
|
||||
failed:
|
||||
up_write(&hidp_session_sem);
|
||||
|
||||
input_free_device(session->input);
|
||||
kfree(session);
|
||||
return err;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user