diff --git a/audio/transport.c b/audio/transport.c
index 3442e5f..795b794 100644
--- a/audio/transport.c
+++ b/audio/transport.c
media_transport_release(transport, owner->accesstype);
+ /* Reply if owner has a pending request */
+ if (owner->pending)
+ media_request_reply(owner->pending, transport->conn, EIO);
+
transport->owners = g_slist_remove(transport->owners, owner);
if (owner->watch)
if (owner->pending) {
owner->pending->id = 0;
media_request_reply(owner->pending, transport->conn, 0);
+ media_owner_remove(owner, owner->pending);
}
a2dp_sep_unlock(sep, transport->session);
if (owner->pending) {
owner->pending->id = 0;
media_request_reply(owner->pending, transport->conn, 0);
+ media_owner_remove(owner, owner->pending);
}
headset_unlock(dev, HEADSET_LOCK_READ | HEADSET_LOCK_WRITE);