[pulseaudio-discuss] [PATCH v2 2/7] bluetooth: ofono: Fix asserting when connecting as AG
Luiz Augusto von Dentz
luiz.dentz at gmail.com
Tue Apr 25 10:19:06 UTC 2017
From: Luiz Augusto von Dentz <luiz.von.dentz at intel.com>
Check the card Type property instead of assuming ofono would only be used
for HF role.
---
src/modules/bluetooth/backend-ofono.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/src/modules/bluetooth/backend-ofono.c b/src/modules/bluetooth/backend-ofono.c
index e18772d..3fbf153 100644
--- a/src/modules/bluetooth/backend-ofono.c
+++ b/src/modules/bluetooth/backend-ofono.c
@@ -209,6 +209,7 @@ static void hf_audio_agent_card_found(pa_bluetooth_backend *backend, const char
const char *key, *value;
struct hf_audio_card *card;
pa_bluetooth_device *d;
+ pa_bluetooth_profile_t p = PA_BLUETOOTH_PROFILE_HEADSET_AUDIO_GATEWAY;
pa_assert(backend);
pa_assert(path);
@@ -240,7 +241,12 @@ static void hf_audio_agent_card_found(pa_bluetooth_backend *backend, const char
} else if (pa_streq(key, "LocalAddress")) {
pa_xfree(card->local_address);
card->local_address = pa_xstrdup(value);
- }
+ } else if (pa_streq(key, "Type")) {
+ if (pa_streq(value, "gateway"))
+ p = PA_BLUETOOTH_PROFILE_HEADSET_HEAD_UNIT;
+ else if pa_streq(value, "handsfree")
+ p = PA_BLUETOOTH_PROFILE_HEADSET_AUDIO_GATEWAY;
+ }
pa_log_debug("%s: %s", key, value);
@@ -253,7 +259,7 @@ static void hf_audio_agent_card_found(pa_bluetooth_backend *backend, const char
goto fail;
}
- card->transport = pa_bluetooth_transport_new(d, backend->ofono_bus_id, path, PA_BLUETOOTH_PROFILE_HEADSET_AUDIO_GATEWAY, NULL, 0);
+ card->transport = pa_bluetooth_transport_new(d, backend->ofono_bus_id, path, p, NULL, 0);
card->transport->acquire = hf_audio_agent_transport_acquire;
card->transport->release = hf_audio_agent_transport_release;
card->transport->userdata = card;
--
2.9.3
More information about the pulseaudio-discuss
mailing list