summaryrefslogtreecommitdiffstats
path: root/net/bluetooth/hidp/core.c
diff options
context:
space:
mode:
authorMarcel Holtmann2006-10-15 17:31:05 +0200
committerDavid S. Miller2006-10-16 08:14:32 +0200
commitb2cfcd75df77b80d9cc3fa84190a350dfa79eb93 (patch)
tree661abc82652a6cc7ff665861d98d127e2152affc /net/bluetooth/hidp/core.c
parent[Bluetooth] Disconnect HID interrupt channel first (diff)
downloadkernel-qcow2-linux-b2cfcd75df77b80d9cc3fa84190a350dfa79eb93.tar.gz
kernel-qcow2-linux-b2cfcd75df77b80d9cc3fa84190a350dfa79eb93.tar.xz
kernel-qcow2-linux-b2cfcd75df77b80d9cc3fa84190a350dfa79eb93.zip
[Bluetooth] Fix reference count when connection lookup fails
When the connection lookup for the device structure fails, the reference count for the HCI device needs to be decremented. Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/bluetooth/hidp/core.c')
-rw-r--r--net/bluetooth/hidp/core.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/net/bluetooth/hidp/core.c b/net/bluetooth/hidp/core.c
index b2d6da67d885..9a562cf7406b 100644
--- a/net/bluetooth/hidp/core.c
+++ b/net/bluetooth/hidp/core.c
@@ -541,12 +541,10 @@ static struct device *hidp_get_device(struct hidp_session *session)
return NULL;
conn = hci_conn_hash_lookup_ba(hdev, ACL_LINK, dst);
- if (!conn)
- return NULL;
hci_dev_put(hdev);
- return &conn->dev;
+ return conn ? &conn->dev : NULL;
}
static inline void hidp_setup_input(struct hidp_session *session, struct hidp_connadd_req *req)