For AVRCP Connect, eliminate dependency on sink
Required for case where device connecting is only an AVRCP
remote, without audio (sink) capability.
Based on Release 4.96
---
audio/manager.c | 15 ++++++++++++++-
1 files changed, 14 insertions(+), 1 deletions(-)
diff --git a/audio/manager.c b/audio/manager.c
index 911af45..b3c8773 100644
--- a/audio/manager.c
+++ b/audio/manager.c
@@ -222,8 +222,21 @@ static void handle_uuid(const char *uuidstr, struct
audio_device *device)
control_update(device, uuid16);
else
device->control = control_init(device, uuid16);
- if (device->sink && sink_is_active(device))
+
+ /* Eliminate dependency on sink if remote without Sink. */
+
+ if (device->sink) {
+ if (sink_is_active(device)) {
+ DBG("Connecting to AVRCP with active sink");
+ avrcp_connect(device);
+ } else {
+ DBG("Connecting to AVRCP with inactive sink");
+ avrcp_connect(device);
+ }
+ } else {
+ DBG("Connecting to AVRCP without sink");
avrcp_connect(device);
+ }
break;
default:
DBG("Unrecognized UUID: 0x%04X", uuid16);
--
1.7.4.4