bluetooth: don't connect on unconnected profile

This commit is contained in:
Marc-André Lureau 2009-06-29 17:46:30 +03:00 committed by Lennart Poettering
parent e93c6c36fe
commit 95d3faaac8

View file

@ -2085,6 +2085,15 @@ static int add_card(struct userdata *u, const pa_bluetooth_device *device) {
u->card->userdata = u; u->card->userdata = u;
u->card->set_profile = card_set_profile; u->card->set_profile = card_set_profile;
d = PA_CARD_PROFILE_DATA(u->card->active_profile);
if ((device->headset_state < PA_BT_AUDIO_STATE_CONNECTED && *d == PROFILE_HSP) ||
(device->audio_sink_state < PA_BT_AUDIO_STATE_CONNECTED && *d == PROFILE_A2DP)) {
pa_log_warn("Default profile not connected, selecting off profile");
u->card->active_profile = pa_hashmap_get(u->card->profiles, "off");
u->card->save_profile = FALSE;
}
d = PA_CARD_PROFILE_DATA(u->card->active_profile); d = PA_CARD_PROFILE_DATA(u->card->active_profile);
u->profile = *d; u->profile = *d;