From e21b24d8258c0d3a06d19c4124a013b9c28719f9 Mon Sep 17 00:00:00 2001 From: Andrzej Kaczmarek Date: Tue, 14 Jan 2014 17:16:19 +0100 Subject: [PATCH] android/a2dp: Fix freeing preset on SEP close In case SEP was opened from local side, corresponding a2dp_setup structure has just reference to a2dp_preset which is stored on presets list. As a result, when closing SEP such preset will be freed leaving dangling pointer on presets list. --- android/a2dp.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/android/a2dp.c b/android/a2dp.c index 145cd6738..27360d3bd 100644 --- a/android/a2dp.c +++ b/android/a2dp.c @@ -647,7 +647,9 @@ static void setup_free(void *data) { struct a2dp_setup *setup = data; - preset_free(setup->preset); + if (!g_slist_find(setup->endpoint->presets, setup->preset)) + preset_free(setup->preset); + g_free(setup); } -- 2.47.3