From 390c2b0885bfb3d301a50b4959e50c31de52b91c Mon Sep 17 00:00:00 2001 From: Sonny Sasaka Date: Sat, 30 May 2020 01:51:18 -0700 Subject: [PATCH] a2dp: Fix ref counting bug of setup_unref In a2dp_reconfig, setup is ref-counted by cb_data. However, in the fail label setup is unref-ed but cb_data is not cleared. This may cause double unref in the future if cb_data gets executed. Instead, we should do setup_cb_free to clear cb_data and unref setup. --- profiles/audio/a2dp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/profiles/audio/a2dp.c b/profiles/audio/a2dp.c index 0d877b132..1b92352cf 100644 --- a/profiles/audio/a2dp.c +++ b/profiles/audio/a2dp.c @@ -1719,7 +1719,7 @@ static int a2dp_reconfig(struct a2dp_channel *chan, const char *sender, return 0; fail: - setup_unref(setup); + setup_cb_free(cb_data); return err; } -- 2.47.3