]> granicus.if.org Git - esp-idf/commitdiff
component/bt: stop to inititate AVRC connection when A2DP connection fails to set up
authorwangmengyang <wangmengyang@espressif.com>
Fri, 7 Sep 2018 04:07:59 +0000 (12:07 +0800)
committerbot <bot@espressif.com>
Mon, 10 Sep 2018 03:35:58 +0000 (03:35 +0000)
AVRCP connection binds to A2DP in current implementation, despite the two profiles are\
independent according to specification. AVRCP connection is not necessary to set-up \
if A2DP connection fails to establish

components/bt/bluedroid/btc/profile/std/a2dp/btc_av.c

index 27842f3d3f88188b6c2f5ca1245ae5e54284420f..a5d527e29920dc4c0e5700fc327ec15239f24d86 100644 (file)
@@ -430,7 +430,8 @@ static BOOLEAN btc_av_state_opening_handler(btc_sm_event_t event, void *p_data)
             btc_rc_check_handle_pending_play(p_bta_data->open.bd_addr,
                                              (p_bta_data->open.status == BTA_AV_SUCCESS));
             */
-        } else if (btc_av_cb.peer_sep == AVDT_TSEP_SRC) {
+        } else if (btc_av_cb.peer_sep == AVDT_TSEP_SRC &&
+                   (p_bta_data->open.status == BTA_AV_SUCCESS)) {
             /* Bring up AVRCP connection too */
             BTA_AvOpenRc(btc_av_cb.bta_handle);
         }