Message ID | 20200528172525.216354-2-luiz.dentz@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Luiz Von Dentz |
Headers | show |
Series | [v2,1/2] avrcp: Fix always requesting player settings for category 1 | expand |
On 2020-05-28 20:25, Luiz Augusto von Dentz wrote: > From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> > > If only volume changed is supported that means the player cannot really > indicate track/metadata changes so don't attempt to read them. > --- > profiles/audio/avrcp.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/profiles/audio/avrcp.c b/profiles/audio/avrcp.c > index 75811bf98..d46ac0ab7 100644 > --- a/profiles/audio/avrcp.c > +++ b/profiles/audio/avrcp.c > @@ -3814,6 +3814,10 @@ static gboolean avrcp_get_capabilities_resp(struct avctp *conn, uint8_t code, > if (!session->controller || !session->controller->player) > return FALSE; > > + /* Skip if player status/metadata if only volume changes is supported */ > + if (events == AVRCP_EVENT_VOLUME_CHANGED) > + return FALSE; > + > if ((session->controller->features & AVRCP_FEATURE_PLAYER_SETTINGS) && > !(events & (1 << AVRCP_EVENT_SETTINGS_CHANGED))) > avrcp_list_player_attributes(session); > The result is still the same with this patch - MTW2 reboots after GetPlayStatus.
Hi Andrey, On Thu, May 28, 2020 at 11:56 AM Andrey Semashev <andrey.semashev@gmail.com> wrote: > > On 2020-05-28 20:25, Luiz Augusto von Dentz wrote: > > From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> > > > > If only volume changed is supported that means the player cannot really > > indicate track/metadata changes so don't attempt to read them. > > --- > > profiles/audio/avrcp.c | 4 ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git a/profiles/audio/avrcp.c b/profiles/audio/avrcp.c > > index 75811bf98..d46ac0ab7 100644 > > --- a/profiles/audio/avrcp.c > > +++ b/profiles/audio/avrcp.c > > @@ -3814,6 +3814,10 @@ static gboolean avrcp_get_capabilities_resp(struct avctp *conn, uint8_t code, > > if (!session->controller || !session->controller->player) > > return FALSE; > > > > + /* Skip if player status/metadata if only volume changes is supported */ > > + if (events == AVRCP_EVENT_VOLUME_CHANGED) > > + return FALSE; > > + > > if ((session->controller->features & AVRCP_FEATURE_PLAYER_SETTINGS) && > > !(events & (1 << AVRCP_EVENT_SETTINGS_CHANGED))) > > avrcp_list_player_attributes(session); > > > > The result is still the same with this patch - MTW2 reboots after > GetPlayStatus. Looks like the test was wrong, Ive send a v3 fixing that.
diff --git a/profiles/audio/avrcp.c b/profiles/audio/avrcp.c index 75811bf98..d46ac0ab7 100644 --- a/profiles/audio/avrcp.c +++ b/profiles/audio/avrcp.c @@ -3814,6 +3814,10 @@ static gboolean avrcp_get_capabilities_resp(struct avctp *conn, uint8_t code, if (!session->controller || !session->controller->player) return FALSE; + /* Skip if player status/metadata if only volume changes is supported */ + if (events == AVRCP_EVENT_VOLUME_CHANGED) + return FALSE; + if ((session->controller->features & AVRCP_FEATURE_PLAYER_SETTINGS) && !(events & (1 << AVRCP_EVENT_SETTINGS_CHANGED))) avrcp_list_player_attributes(session);
From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> If only volume changed is supported that means the player cannot really indicate track/metadata changes so don't attempt to read them. --- profiles/audio/avrcp.c | 4 ++++ 1 file changed, 4 insertions(+)