Usecase:
1) Connect from carkit supporting AVRCP 1.4/1.5 CT to DUT
2) Issue get item attribute command with valid attribute list.
Expected behaviour:
Get item attribute command succeeds and returns the requested
attributes of particular item
Observed result:
Get Item attribute command fails with BAD Param Error
Root Cause:
Wrong structure from tAVRC_COMMAND was being passed to fill_attribute_id_array
which was leading to error being returned.
Fix:
Use get_attrs of type tAVRC_GET_ATTRS_CMD instead of get_elem_attrs of type
tAVRC_GET_ELEM_ATTRS_CMD when remote device requests for get item attributes.
Test: Checked that now bad param error is not returned in response for
get item attribute command from remote device.
Bug:
37302234
Bug:
36055995
Change-Id: I9245f726f37ffd666d143d2232dac868a2cc3268
(cherry picked from commit
6510a471696f24a051b79ca9fd7a210bf7e293bc)
case AVRC_PDU_GET_ITEM_ATTRIBUTES: {
btrc_media_attr_t item_attrs[BTRC_MAX_ELEM_ATTR_SIZE];
uint8_t num_attr = fill_attribute_id_array(
- pavrc_cmd->get_elem_attrs.num_attr,
- (btrc_media_attr_t*)pavrc_cmd->get_elem_attrs.attrs,
+ pavrc_cmd->get_attrs.attr_count,
+ (btrc_media_attr_t*)pavrc_cmd->get_attrs.p_attr_list,
BTRC_MAX_ELEM_ATTR_SIZE, item_attrs);
if (num_attr == 0) {
BTIF_TRACE_ERROR(