Merge branch 'bugfix/ai_review_a2dp' into 'master'

fix(bt): fix A2DP issues reported by AI code review

Closes BT-4288

See merge request espressif/esp-idf!46787
This commit is contained in:
Wang Meng Yang
2026-04-20 09:21:12 +08:00
33 changed files with 592 additions and 147 deletions
@@ -77,7 +77,7 @@ esp_err_t esp_a2d_sink_register_stream_endpoint(uint8_t seid, const esp_a2d_mcc_
return ESP_ERR_INVALID_STATE;
}
if (seid >= ESP_A2D_MAX_SEPS) {
if (mcc == NULL || seid >= ESP_A2D_MAX_SEPS) {
return ESP_ERR_INVALID_ARG;
}
@@ -209,6 +209,7 @@ esp_err_t esp_a2d_sink_disconnect(esp_bd_addr_t remote_bda)
msg.pid = BTC_PID_A2DP;
msg.act = BTC_AV_SINK_API_DISCONNECT_EVT;
memset(&arg, 0, sizeof(btc_av_args_t));
/* Switch to BTC context */
memcpy(&(arg.disconn), remote_bda, sizeof(bt_bdaddr_t));
stat = btc_transfer_context(&msg, &arg, sizeof(btc_av_args_t), NULL, NULL);
@@ -292,7 +293,7 @@ esp_err_t esp_a2d_media_ctrl(esp_a2d_media_ctrl_t ctrl)
return ESP_ERR_INVALID_STATE;
}
if (ctrl > ESP_A2D_MEDIA_CTRL_SUSPEND) {
if (ctrl <= ESP_A2D_MEDIA_CTRL_NONE || ctrl > ESP_A2D_MEDIA_CTRL_SUSPEND) {
return ESP_ERR_INVALID_ARG;
}
@@ -388,7 +389,7 @@ esp_err_t esp_a2d_source_register_stream_endpoint(uint8_t seid, const esp_a2d_mc
return ESP_ERR_INVALID_STATE;
}
if (seid >= ESP_A2D_MAX_SEPS) {
if (mcc == NULL || seid >= ESP_A2D_MAX_SEPS) {
return ESP_ERR_INVALID_ARG;
}