Просмотр исходного кода

component/bt: fix blufi prepare write buf len invalid

zhiweijian 6 лет назад
Родитель
Сommit
5187d64c34
1 измененных файлов с 3 добавлено и 0 удалено
  1. 3 0
      components/bt/bluedroid/btc/profile/esp/blufi/blufi_prf.c

+ 3 - 0
components/bt/bluedroid/btc/profile/esp/blufi/blufi_prf.c

@@ -147,6 +147,7 @@ static void blufi_profile_cb(tBTA_GATTS_EVT event, tBTA_GATTS *p_data)
 
 
             if (blufi_env.prepare_buf == NULL) {
             if (blufi_env.prepare_buf == NULL) {
                 blufi_env.prepare_buf = osi_malloc(BLUFI_PREPAIR_BUF_MAX_SIZE);
                 blufi_env.prepare_buf = osi_malloc(BLUFI_PREPAIR_BUF_MAX_SIZE);
+                blufi_env.prepare_len = 0;
                 if (blufi_env.prepare_buf == NULL) {
                 if (blufi_env.prepare_buf == NULL) {
                     BLUFI_TRACE_ERROR("Blufi prep no mem\n");
                     BLUFI_TRACE_ERROR("Blufi prep no mem\n");
                     status = GATT_NO_RESOURCES;
                     status = GATT_NO_RESOURCES;
@@ -174,6 +175,7 @@ static void blufi_profile_cb(tBTA_GATTS_EVT event, tBTA_GATTS *p_data)
                 if (blufi_env.prepare_buf) {
                 if (blufi_env.prepare_buf) {
                     osi_free(blufi_env.prepare_buf);
                     osi_free(blufi_env.prepare_buf);
                     blufi_env.prepare_buf = NULL;
                     blufi_env.prepare_buf = NULL;
+                    blufi_env.prepare_len = 0;
                 }
                 }
                 BLUFI_TRACE_ERROR("write data error , error code 0x%x\n", status);
                 BLUFI_TRACE_ERROR("write data error , error code 0x%x\n", status);
                 return;
                 return;
@@ -209,6 +211,7 @@ static void blufi_profile_cb(tBTA_GATTS_EVT event, tBTA_GATTS *p_data)
         if (blufi_env.prepare_buf) {
         if (blufi_env.prepare_buf) {
             osi_free(blufi_env.prepare_buf);
             osi_free(blufi_env.prepare_buf);
             blufi_env.prepare_buf = NULL;
             blufi_env.prepare_buf = NULL;
+            blufi_env.prepare_len = 0;
         }
         }
 
 
         break;
         break;