Re: [PATCH] avrcp: Remove dead code

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

 



Hi Andrei,

On Fri, Jan 10, 2014 at 4:56 PM, Andrei Emeltchenko
<Andrei.Emeltchenko.news@xxxxxxxxx> wrote:
> From: Andrei Emeltchenko <andrei.emeltchenko@xxxxxxxxx>
>
> session->target cannot be NULL since it is already checked 11 lines
> above:
> ...
>         if (session == NULL || session->target == NULL)
>                 return -ENOTCONN;
> ...
> ---
>  profiles/audio/avrcp.c | 24 ++++--------------------
>  1 file changed, 4 insertions(+), 20 deletions(-)
>
> diff --git a/profiles/audio/avrcp.c b/profiles/audio/avrcp.c
> index 8d4309a..197959f 100644
> --- a/profiles/audio/avrcp.c
> +++ b/profiles/audio/avrcp.c
> @@ -3722,30 +3722,14 @@ int avrcp_set_volume(struct btd_device *dev, uint8_t volume)
>
>         DBG("volume=%u", volume);
>
> -       if (session->target) {
> -               pdu->pdu_id = AVRCP_SET_ABSOLUTE_VOLUME;
> -               pdu->params[0] = volume;
> -               pdu->params_len = htons(1);
> +       pdu->pdu_id = AVRCP_SET_ABSOLUTE_VOLUME;
> +       pdu->params[0] = volume;
> +       pdu->params_len = htons(1);
>
> -               return avctp_send_vendordep_req(session->conn,
> +       return avctp_send_vendordep_req(session->conn,
>                                         AVC_CTYPE_CONTROL, AVC_SUBUNIT_PANEL,
>                                         buf, sizeof(buf),
>                                         avrcp_handle_set_volume, session);
> -       } else if (session->registered_events &
> -                                       (1 << AVRCP_EVENT_VOLUME_CHANGED)) {
> -               uint8_t id = AVRCP_EVENT_VOLUME_CHANGED;
> -               pdu->pdu_id = AVRCP_REGISTER_NOTIFICATION;
> -               pdu->params[0] = AVRCP_EVENT_VOLUME_CHANGED;
> -               pdu->params[1] = volume;
> -               pdu->params_len = htons(2);
> -
> -               return avctp_send_vendordep(session->conn,
> -                                       session->transaction_events[id],
> -                                       AVC_CTYPE_CHANGED, AVC_SUBUNIT_PANEL,
> -                                       buf, sizeof(buf));
> -       }

The above code is necessary to notify volume changes when acting as
controller (session->control is set), so your fix is not good either
and we should depend on session->target on the first place because
both session->control and session->target can be set.
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[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