Hi Frédéric,
2011/8/26 Frédéric Dalleau [off-list ref]:
quoted hunk ↗ jump to hunk
---
audio/gateway.c | 20 ++++++++++++++++++++
1 files changed, 20 insertions(+), 0 deletions(-)
diff --git a/audio/gateway.c b/audio/gateway.c
index 8cbaeb4..c5f21e6 100644
--- a/audio/gateway.c
+++ b/audio/gateway.c
@@ -859,7 +859,27 @@ int gateway_config_stream(struct audio_device *dev, gateway_stream_cb_t sco_cb,
gboolean gateway_cancel_stream(struct audio_device *dev, unsigned int id)
{
+ struct gateway *gw = dev->gateway;
+ GSList *l;
+ struct connect_cb *cb = NULL;
+
+ for (l = gw->callbacks; l != NULL; l = l->next) {
+ struct connect_cb *tmp = l->data;
+
+ if (tmp->id == id) {
+ cb = tmp;
+ break;
+ }
+ }
+
+ if (!cb)
+ return FALSE;
+
+ gw->callbacks = g_slist_remove(gw->callbacks, cb);
+ g_free(cb);
+
gateway_suspend_stream(dev);
+
return TRUE;
}
--
1.7.1
Ack.
--
Luiz Augusto von Dentz