hfp: fix audio connection shutdown

This commit is contained in:
Milanka Ringwald 2015-11-19 12:19:43 +01:00
parent 051eca8fa9
commit 4630085960
2 changed files with 7 additions and 9 deletions

View File

@ -594,6 +594,8 @@ void hfp_handle_hci_event(hfp_callback_t callback, uint8_t packet_type, uint8_t
log_info("SCO disconnected, w2 disconnect RFCOMM\n"); log_info("SCO disconnected, w2 disconnect RFCOMM\n");
context->sco_handle = 0; context->sco_handle = 0;
context->release_audio_connection = 0; context->release_audio_connection = 0;
context->state = HFP_SERVICE_LEVEL_CONNECTION_ESTABLISHED;
hfp_emit_event(callback, HFP_SUBEVENT_AUDIO_CONNECTION_RELEASED, 0);
break; break;
} }
break; break;

View File

@ -198,13 +198,9 @@ TEST_GROUP(HFPClient){
} }
void teardown(void){ void teardown(void){
if (audio_connection_established){ hfp_ag_release_audio_connection(device_addr);
hfp_ag_release_audio_connection(device_addr); hfp_ag_release_service_level_connection(device_addr);
}
if (service_level_connection_established){
hfp_ag_release_service_level_connection(device_addr);
}
service_level_connection_established = 0; service_level_connection_established = 0;
codecs_connection_established = 0; codecs_connection_established = 0;
audio_connection_established = 0; audio_connection_established = 0;
@ -236,7 +232,7 @@ TEST(HFPClient, HFAnswerIncomingCallWithInBandRingTone){
} }
TEST(HFPClient, HFAudioConnectionEstablishedWithCodecNegtiation){ TEST(HFPClient, HFAudioConnectionEstablishedWithCodecNegotiation){
setup_hfp_service_level_connection(default_slc_setup(), default_slc_setup_size()); setup_hfp_service_level_connection(default_slc_setup(), default_slc_setup_size());
CHECK_EQUAL(service_level_connection_established, 1); CHECK_EQUAL(service_level_connection_established, 1);
@ -250,7 +246,7 @@ TEST(HFPClient, HFAudioConnectionEstablishedWithCodecNegtiation){
CHECK_EQUAL(audio_connection_established, 0); CHECK_EQUAL(audio_connection_established, 0);
} }
TEST(HFPClient, HFAudioConnectionEstablishedWithDefaultCodec){ TEST(HFPClient, HFAudioConnectionEstablishedWithoutCodecNegotiation){
hfp_ag_init(rfcomm_channel_nr, supported_features_without_codec_negotiation, hfp_ag_init(rfcomm_channel_nr, supported_features_without_codec_negotiation,
codecs, sizeof(codecs), codecs, sizeof(codecs),
ag_indicators, ag_indicators_nr, ag_indicators, ag_indicators_nr,