pbap_client: init parser for vcard listing parsing

This commit is contained in:
Matthias Ringwald 2021-06-29 19:06:19 +02:00
parent 430422d85a
commit a154fcd6ec
2 changed files with 5 additions and 1 deletions

View File

@ -14,10 +14,12 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
### Fixed
- A2DP Source: fix reconfigure
- PBAP Client: handle chunked vCard Listing
### Changed
- HFP: API functions return status code if appropriate
## Release v1.4.1
### Added

View File

@ -423,6 +423,7 @@ static void pbap_handle_can_send_now(void){
goep_client_header_add_application_parameters(pbap_client->goep_cid, &application_parameters[0], i);
}
}
// send packet
pbap_client->state = PBAP_W4_GET_CARD_LIST_COMPLETE;
pbap_client->request_number++;
@ -602,7 +603,6 @@ static void pbap_client_process_vcard_listing(uint8_t *packet, uint16_t size){
uint8_t hi = obex_iterator_get_hi(&it);
if ((hi == OBEX_HEADER_END_OF_BODY) ||
(hi == OBEX_HEADER_BODY)){
pbap_client_vcard_listing_init_parser(pbap_client);
uint16_t data_len = obex_iterator_get_data_len(&it);
const uint8_t * data = obex_iterator_get_data(&it);
// now try parsing it
@ -992,6 +992,7 @@ uint8_t pbap_pull_vcard_listing(uint16_t pbap_cid, const char * path){
pbap_client->phonebook_path = path;
pbap_client->phone_number = NULL;
pbap_client->request_number = 0;
pbap_client_vcard_listing_init_parser(pbap_client);
goep_client_request_can_send_now(pbap_client->goep_cid);
return 0;
}
@ -1015,6 +1016,7 @@ uint8_t pbap_lookup_by_number(uint16_t pbap_cid, const char * phone_number){
pbap_client->phonebook_path = pbap_vcard_listing_name;
pbap_client->phone_number = phone_number;
pbap_client->request_number = 0;
pbap_client_vcard_listing_init_parser(pbap_client);
goep_client_request_can_send_now(pbap_client->goep_cid);
return 0;
}