Re: [PATCH BlueZ v3] avrcp: Fix unregister AVRCP player

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Huang-Huang,

On Thu, May 20, 2021 at 7:44 AM Huang-Huang Bao <eh5@xxxxxxxx> wrote:
>
> 'notify_addressed_player_changed()' expected to be called with
> 'player->changed_id' set to a non-zero value.
>
>     player->changed_id = g_idle_add(notify_addressed_player_changed,
>                                     player);
>
> And 'avrcp_player_event()' relies on 'player->changed_id' to perform
> Addressed Player Changed notification. However,
> 'avrcp_unregister_player()' calls 'notify_addressed_player_changed()'
> without adding it to the main loop and set 'player->changed_id'. To
> indicate addreddsed player changed for both scenarios, we set
> 'player->changed_id' to 1 at the head of
> 'notify_addressed_player_changed()'.
>
> Fixes https://github.com/bluez/bluez/issues/142
> ---
>  profiles/audio/avrcp.c | 6 ++++++
>  1 file changed, 6 insertions(+)
>
> diff --git a/profiles/audio/avrcp.c b/profiles/audio/avrcp.c
> index 58d30b24d..ef721e17b 100644
> --- a/profiles/audio/avrcp.c
> +++ b/profiles/audio/avrcp.c
> @@ -1794,6 +1794,12 @@ static gboolean notify_addressed_player_changed(gpointer user_data)
>                                 };
>         uint8_t i;
>
> +       /*
> +        * Set changed_id to an non-zero value to indicate addreddsed player
> +        * changed.
> +        */
> +       player->changed_id = 1;
> +
>         avrcp_player_event(player, AVRCP_EVENT_ADDRESSED_PLAYER_CHANGED, NULL);
>
>         /*
> --
> 2.31.1

Applied, thanks.

-- 
Luiz Augusto von Dentz



[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux