mirror of
https://github.com/espressif/esp-idf.git
synced 2025-07-31 19:24:33 +02:00
Merge branch 'contrib/github_pr_16076_v5.4' into 'release/v5.4'
fix(esp_http_client): fix spurious async open error (GitHub PR) (v5.4) See merge request espressif/esp-idf!40741
This commit is contained in:
@@ -1690,11 +1690,17 @@ esp_err_t esp_http_client_open(esp_http_client_handle_t client, int write_len)
|
||||
client->post_len = write_len;
|
||||
esp_err_t err;
|
||||
if ((err = esp_http_client_connect(client)) != ESP_OK) {
|
||||
if (client->is_async && err == ESP_ERR_HTTP_CONNECTING) {
|
||||
return ESP_ERR_HTTP_EAGAIN;
|
||||
}
|
||||
http_dispatch_event(client, HTTP_EVENT_ERROR, esp_transport_get_error_handle(client->transport), 0);
|
||||
http_dispatch_event_to_event_loop(HTTP_EVENT_ERROR, &client, sizeof(esp_http_client_handle_t));
|
||||
return err;
|
||||
}
|
||||
if ((err = esp_http_client_request_send(client, write_len)) != ESP_OK) {
|
||||
if (client->is_async && errno == EAGAIN) {
|
||||
return ESP_ERR_HTTP_EAGAIN;
|
||||
}
|
||||
http_dispatch_event(client, HTTP_EVENT_ERROR, esp_transport_get_error_handle(client->transport), 0);
|
||||
http_dispatch_event_to_event_loop(HTTP_EVENT_ERROR, &client, sizeof(esp_http_client_handle_t));
|
||||
return err;
|
||||
|
Reference in New Issue
Block a user