OSDN Git Service

Fix bad GATT client state machine state after successfull cache load
authorJakub Pawlowski <jpawlowski@google.com>
Mon, 3 Oct 2016 20:25:01 +0000 (13:25 -0700)
committerJakub Pawlowski <jpawlowski@google.com>
Mon, 3 Oct 2016 21:25:29 +0000 (14:25 -0700)
If the GATT service cache was successfully loaded from a file, the
state must be reset to idle.

Bug: 31175159
Change-Id: I92ebf1bec9d2e7467d7412b41923614ec5a13b6d

bta/gatt/bta_gattc_act.c

index 01b06b8..3390b94 100644 (file)
@@ -715,6 +715,7 @@ void bta_gattc_conn(tBTA_GATTC_CLCB *p_clcb, tBTA_GATTC_DATA *p_data)
             {
                 p_clcb->p_srcb->state = BTA_GATTC_SERV_LOAD;
                 if (bta_gattc_cache_load(p_clcb)) {
+                    p_clcb->p_srcb->state = BTA_GATTC_SERV_IDLE;
                     bta_gattc_reset_discover_st(p_clcb->p_srcb, BTA_GATT_OK);
                 } else {
                     p_clcb->p_srcb->state = BTA_GATTC_SERV_DISC;