diff options
Diffstat (limited to 'audio')
-rw-r--r-- | audio/a2dp.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/audio/a2dp.c b/audio/a2dp.c index e633c855..83e12c9e 100644 --- a/audio/a2dp.c +++ b/audio/a2dp.c @@ -150,13 +150,15 @@ static gboolean finalize_config(struct a2dp_setup *s) setup_ref(s); for (l = s->cb; l != NULL; l = l->next) { struct a2dp_setup_cb *cb = l->data; + struct avdtp_stream *stream = s->err ? NULL : s->stream; - if (cb->config_cb) { - cb->config_cb(s->session, s->sep, s->stream, s->err, - cb->user_data); - cb->config_cb = NULL; - setup_unref(s); - } + if (!cb->config_cb) + continue; + + cb->config_cb(s->session, s->sep, stream, s->err, + cb->user_data); + cb->config_cb = NULL; + setup_unref(s); } setup_unref(s); |