From c7514bc9b27c43fadfcb02180e7d8875890c7820 Mon Sep 17 00:00:00 2001 From: Johan Hedberg Date: Fri, 7 Dec 2007 08:03:02 +0000 Subject: Fix BT_GETCAPABILITIES when the headset has already been acting as INT --- audio/avdtp.c | 8 ++++---- audio/unix.c | 5 +++-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/audio/avdtp.c b/audio/avdtp.c index b0b5b7cd..98cce35f 100644 --- a/audio/avdtp.c +++ b/audio/avdtp.c @@ -1824,12 +1824,12 @@ static gboolean avdtp_discover_resp(struct avdtp *session, resp->seps[i].seid, resp->seps[i].type, resp->seps[i].media_type, resp->seps[i].inuse); - /* Skip SEP's which are in use */ - if (resp->seps[i].inuse) - continue; - sep = find_remote_sep(session->seps, resp->seps[i].seid); if (!sep) { + if (resp->seps[i].inuse && + !find_stream_by_rseid(session, + resp->seps[i].seid)) + continue; sep = g_new0(struct avdtp_remote_sep, 1); session->seps = g_slist_append(session->seps, sep); } diff --git a/audio/unix.c b/audio/unix.c index d3e7485c..31e1dcb2 100644 --- a/audio/unix.c +++ b/audio/unix.c @@ -364,9 +364,10 @@ static void a2dp_discovery_complete(struct avdtp *session, GSList *seps, codec_cap = (void *) cap->data; - if (codec_cap->media_codec_type == A2DP_CODEC_SBC && !sbc_cap) + if (codec_cap->media_codec_type == A2DP_CODEC_SBC && !sbc_cap) { sbc_cap = (void *) codec_cap; - + break; + } } /* endianess prevent direct cast */ -- cgit