diff options
author | Luiz Augusto von Dentz <luiz.von.dentz@intel.com> | 2014-10-10 15:14:02 +0300 |
---|---|---|
committer | Luiz Augusto von Dentz <luiz.von.dentz@intel.com> | 2014-10-10 17:00:42 +0300 |
commit | fd6dc924abeaed4aec23a4d85743105ccf3915c6 (patch) | |
tree | a1cce3984677b0d03986c94b9ff5ad0baabef94b /android/avrcp-lib.c | |
parent | 48381ae908df59fd17addd4d353d1e6ef268ad1a (diff) | |
download | bluez-fd6dc924abeaed4aec23a4d85743105ccf3915c6.tar.gz |
unit/test-avrcp: Add /TP/MCN/CB/BI-05-C test
Verify the TG issues an error when receiving a command for an invalid
UID_counter.
Diffstat (limited to 'android/avrcp-lib.c')
-rw-r--r-- | android/avrcp-lib.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/android/avrcp-lib.c b/android/avrcp-lib.c index 1dc42252a..b7d0f5ead 100644 --- a/android/avrcp-lib.c +++ b/android/avrcp-lib.c @@ -3468,8 +3468,8 @@ static bool pack_attribute_list(struct iovec *iov, uint8_t number, } int avrcp_get_item_attributes_rsp(struct avrcp *session, uint8_t transaction, - uint8_t number, uint32_t *attrs, - const char **text) + uint8_t status, uint8_t number, + uint32_t *attrs, const char **text) { struct iovec iov[AVRCP_MEDIA_ATTRIBUTE_LAST * 2 + 1]; struct get_item_attributes_rsp rsp; @@ -3477,7 +3477,14 @@ int avrcp_get_item_attributes_rsp(struct avrcp *session, uint8_t transaction, if (number > AVRCP_MEDIA_ATTRIBUTE_LAST) return -EINVAL; - rsp.status = AVRCP_STATUS_SUCCESS; + if (status != AVRCP_STATUS_SUCCESS) { + iov[0].iov_base = &status; + iov[0].iov_len = sizeof(status); + return avrcp_send_browsing(session, transaction, + AVRCP_GET_ITEM_ATTRIBUTES, iov, 1); + } + + rsp.status = status; rsp.number = number; iov[0].iov_base = &rsp; |