From ebba1b0ea845dbdb24d14b3187b1d99c78790701 Mon Sep 17 00:00:00 2001 From: Matthias Ringwald Date: Tue, 13 Oct 2015 00:16:32 +0200 Subject: [PATCH] introduce parallel gatt client packet handlers during transition --- test/gatt_client/gatt_client_test.c | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/test/gatt_client/gatt_client_test.c b/test/gatt_client/gatt_client_test.c index b369731dc..f975639ae 100644 --- a/test/gatt_client/gatt_client_test.c +++ b/test/gatt_client/gatt_client_test.c @@ -142,6 +142,23 @@ static void verify_blob(uint16_t value_length, uint16_t value_offset, uint8_t * result_counter++; } +static void handle_ble_client_event_new(uint8_t packet_type, uint8_t *packet, uint16_t size){ + if (packet_type != HCI_EVENT_PACKET) return; + uint8_t status; + switch (packet[0]){ + case GATT_QUERY_COMPLETE: + status = packet[4]; + gatt_query_complete = 1; + if (status){ + gatt_query_complete = 0; + printf("GATT_QUERY_COMPLETE failed with status 0x%02X\n", status); + } + break; + default: + break; + } +} + static void handle_ble_client_event(le_event_t * event){ switch(event->type){ @@ -194,7 +211,8 @@ static void handle_ble_client_event(le_event_t * event){ result_counter++; break; } - case GATT_QUERY_COMPLETE:{ +#if 0 + case GATT_QUERY_COMPLETE:{ gatt_complete_event_t *gce = (gatt_complete_event_t *)event; gatt_query_complete = 1; @@ -204,6 +222,7 @@ static void handle_ble_client_event(le_event_t * event){ } break; } +#endif default: break; } @@ -700,7 +719,8 @@ int main (int argc, const char * argv[]){ att_set_read_callback(&att_read_callback); gatt_client_init(); - gatt_client_id = gatt_client_register_packet_handler(handle_ble_client_event); + gatt_client_id = gatt_client_register_packet_handler_new(handle_ble_client_event, handle_ble_client_event_new); + // gatt_client_id = gatt_client_register_packet_handler(handle_ble_client_event); return CommandLineTestRunner::RunAllTests(argc, argv); }