kopia lustrzana https://github.com/espressif/esp-idf
tcp_transport: Fix some memory leak issues by coverity static analyzer.
rodzic
562a5dd215
commit
7bf205162c
|
@ -325,7 +325,10 @@ esp_transport_handle_t esp_transport_ssl_init(void)
|
||||||
{
|
{
|
||||||
esp_transport_handle_t t = esp_transport_init();
|
esp_transport_handle_t t = esp_transport_init();
|
||||||
transport_ssl_t *ssl = calloc(1, sizeof(transport_ssl_t));
|
transport_ssl_t *ssl = calloc(1, sizeof(transport_ssl_t));
|
||||||
ESP_TRANSPORT_MEM_CHECK(TAG, ssl, return NULL);
|
ESP_TRANSPORT_MEM_CHECK(TAG, ssl, {
|
||||||
|
esp_transport_destroy(t);
|
||||||
|
return NULL;
|
||||||
|
});
|
||||||
esp_transport_set_context_data(t, ssl);
|
esp_transport_set_context_data(t, ssl);
|
||||||
esp_transport_set_func(t, ssl_connect, ssl_read, ssl_write, ssl_close, ssl_poll_read, ssl_poll_write, ssl_destroy);
|
esp_transport_set_func(t, ssl_connect, ssl_read, ssl_write, ssl_close, ssl_poll_read, ssl_poll_write, ssl_destroy);
|
||||||
esp_transport_set_async_connect_func(t, ssl_connect_async);
|
esp_transport_set_async_connect_func(t, ssl_connect_async);
|
||||||
|
|
|
@ -296,7 +296,11 @@ esp_transport_handle_t esp_transport_tcp_init(void)
|
||||||
{
|
{
|
||||||
esp_transport_handle_t t = esp_transport_init();
|
esp_transport_handle_t t = esp_transport_init();
|
||||||
transport_tcp_t *tcp = calloc(1, sizeof(transport_tcp_t));
|
transport_tcp_t *tcp = calloc(1, sizeof(transport_tcp_t));
|
||||||
ESP_TRANSPORT_MEM_CHECK(TAG, tcp, return NULL);
|
ESP_TRANSPORT_MEM_CHECK(TAG, tcp, {
|
||||||
|
esp_transport_destroy(t);
|
||||||
|
return NULL;
|
||||||
|
});
|
||||||
|
|
||||||
tcp->sock = -1;
|
tcp->sock = -1;
|
||||||
esp_transport_set_func(t, tcp_connect, tcp_read, tcp_write, tcp_close, tcp_poll_read, tcp_poll_write, tcp_destroy);
|
esp_transport_set_func(t, tcp_connect, tcp_read, tcp_write, tcp_close, tcp_poll_read, tcp_poll_write, tcp_destroy);
|
||||||
esp_transport_set_context_data(t, tcp);
|
esp_transport_set_context_data(t, tcp);
|
||||||
|
|
|
@ -587,12 +587,14 @@ esp_transport_handle_t esp_transport_ws_init(esp_transport_handle_t parent_handl
|
||||||
ws->path = strdup("/");
|
ws->path = strdup("/");
|
||||||
ESP_TRANSPORT_MEM_CHECK(TAG, ws->path, {
|
ESP_TRANSPORT_MEM_CHECK(TAG, ws->path, {
|
||||||
free(ws);
|
free(ws);
|
||||||
|
esp_transport_destroy(t);
|
||||||
return NULL;
|
return NULL;
|
||||||
});
|
});
|
||||||
ws->buffer = malloc(WS_BUFFER_SIZE);
|
ws->buffer = malloc(WS_BUFFER_SIZE);
|
||||||
ESP_TRANSPORT_MEM_CHECK(TAG, ws->buffer, {
|
ESP_TRANSPORT_MEM_CHECK(TAG, ws->buffer, {
|
||||||
free(ws->path);
|
free(ws->path);
|
||||||
free(ws);
|
free(ws);
|
||||||
|
esp_transport_destroy(t);
|
||||||
return NULL;
|
return NULL;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
Ładowanie…
Reference in New Issue