diff --git a/components/bt/host/bluedroid/btc/profile/esp/blufi/blufi_prf.c b/components/bt/host/bluedroid/btc/profile/esp/blufi/blufi_prf.c index dec4caceae..6150c651cd 100644 --- a/components/bt/host/bluedroid/btc/profile/esp/blufi/blufi_prf.c +++ b/components/bt/host/bluedroid/btc/profile/esp/blufi/blufi_prf.c @@ -537,6 +537,13 @@ void btc_blufi_send_encap(uint8_t type, uint8_t *data, int total_data_len) } retry: + if (blufi_env.is_connected == false) { + BTC_TRACE_WARNING("%s ble connection is broken\n", __func__); + osi_free(hdr); + hdr = NULL; + return; + } + if (esp_ble_get_cur_sendable_packets_num(BTC_GATT_GET_CONN_ID(blufi_env.conn_id)) > 0) { btc_blufi_send_notify((uint8_t *)hdr, ((hdr->fc & BLUFI_FC_CHECK) ?