summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2008-09-05 22:14:34 +0200
committerMarcel Holtmann <marcel@holtmann.org>2008-09-05 22:14:34 +0200
commit5c56174577f601c74807ba232f31773dbe2db9b1 (patch)
tree32624b5549afb06949efe88c2c393527cfbc9fa5
parentc4c2f40df0f7d41ecfd48596b4d0c585240f7cf0 (diff)
parent37a7d2aba17bcb47a3e9bfba78ad23a8a3cbe420 (diff)
Merge branch 'master' of ssh://master.kernel.org/pub/scm/bluetooth/bluez
-rw-r--r--src/device.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/device.c b/src/device.c
index 1cf260ec..3476ec06 100644
--- a/src/device.c
+++ b/src/device.c
@@ -787,13 +787,19 @@ static void update_services(struct browse_req *req, sdp_list_t *recs)
if (sdp_get_service_classes(rec, &svcclass) < 0)
continue;
- store_record(src, dst, rec);
/* Extract the first element and skip the remainning */
uuid_str = bt_uuid2string(svcclass->data);
if (!uuid_str)
continue;
+ /* Check for duplicates */
+ if (g_slist_find_custom(req->uuids_added, uuid_str,
+ (GCompareFunc) strcmp))
+ continue;
+
+ store_record(src, dst, rec);
+
/* Copy record */
if (sdp_gen_record_pdu(rec, &pdu) == 0) {
sdp_record_t *record;