diff options
-rw-r--r-- | system/stack/gatt/gatt_utils.cc | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/system/stack/gatt/gatt_utils.cc b/system/stack/gatt/gatt_utils.cc index b94969faa4..df545f13fc 100644 --- a/system/stack/gatt/gatt_utils.cc +++ b/system/stack/gatt/gatt_utils.cc @@ -1741,16 +1741,13 @@ static void gatt_le_disconnect_complete_notify_user(const RawAddress& bda, tGATT_DISCONN_REASON reason, tBT_TRANSPORT transport) { tGATT_TCB* p_tcb = gatt_find_tcb_by_addr(bda, transport); - uint8_t tcb_idx = 0; - - if (p_tcb) { - tcb_idx = p_tcb->tcb_idx; - } for (uint8_t i = 0; i < GATT_MAX_APPS; i++) { tGATT_REG* p_reg = &gatt_cb.cl_rcb[i]; if (p_reg->in_use && p_reg->app_cb.p_conn_cb) { - uint16_t conn_id = GATT_CREATE_CONN_ID(tcb_idx, p_reg->gatt_if); + uint16_t conn_id = + p_tcb ? GATT_CREATE_CONN_ID(p_tcb->tcb_idx, p_reg->gatt_if) + : GATT_INVALID_CONN_ID; (*p_reg->app_cb.p_conn_cb)(p_reg->gatt_if, bda, conn_id, kGattDisconnected, reason, transport); } |