[pulseaudio-discuss] [PATCH] bluetooth: Don't free read_smoother in pa__done().
Tanu Kaskinen
tanuk at iki.fi
Sat Dec 15 22:30:37 PST 2012
On Thu, 2012-03-22 at 12:23 +0200, Tanu Kaskinen wrote:
> pa__done() calls stop_thread(), and stop_thread() already
> frees the smoother. The duplicate freeing is not strictly
> a bug, but static analyzers (in this case Coverity) may
> complain about double-freeing, because when pa__done()
> "frees" the smoother (which doesn't actually ever happen),
> the pointer is not nulled. pa__done() then calls
> bt_transport_release(), which will also free the smoother
> if it's not NULL.
>
> The analyzer complaint could be silenced also by nulling
> the pointer in pa__done(), but since this is clearly
> redundant code, I chose to remove it.
> ---
> src/modules/bluetooth/module-bluetooth-device.c | 3 ---
> 1 files changed, 0 insertions(+), 3 deletions(-)
>
> diff --git a/src/modules/bluetooth/module-bluetooth-device.c b/src/modules/bluetooth/module-bluetooth-device.c
> index 7992e12..d5240f5 100644
> --- a/src/modules/bluetooth/module-bluetooth-device.c
> +++ b/src/modules/bluetooth/module-bluetooth-device.c
> @@ -3077,9 +3077,6 @@ void pa__done(pa_module *m) {
> if (u->card)
> pa_card_free(u->card);
>
> - if (u->read_smoother)
> - pa_smoother_free(u->read_smoother);
> -
> shutdown_bt(u);
>
> if (u->a2dp.buffer)
This is now applied.
--
Tanu
More information about the pulseaudio-discuss
mailing list