Files
wget2/include
Ander Juaristi b3b24b8054 Fix memory leaks
* libwget/ssl_quic_gnutls.c (wget_ssl_close_quic): new function:
   deinit gnutls_session_t object.
 * libwget/quic.c (quic_stream_mark_acked): free node after dequeue.
   (wget_quic_deinit): deinit gnutls_session_t object.
 * libwget/queue.c (wget_queue_free): remove unused function.
   (wget_queue_free_node): new function: remove a node and its inner
   contents.
   (wget_queue_dequeue_transmitted_node, wget_queue_dequeue_data_node):
   return outer node object, instead of inner data. This makes it easier
   to free the full node & its contents after inspection.
   (wget_queue_enqueue): fix: unnecessary allocation.
 * libwget/http3.c (wget_http3_send_request): fix: free vector after
   use.
   (wget_http3_get_response): free full node after use.
   (wget_http3_get_response_cb): new function.
 * libwget/bytes.c (wget_byte_new): free bytes struct on error.
 * include/wget/wget.h (wget_queue_free): remove unused function.
   (wget_queue_free_node): new function.
   (wget_queue_dequeue_transmitted_node): change return value.
   (wget_queue_dequeue_data_node): change return value.

In addition, create new function wget_queue_free_node.

Introduce a new function that will free the node and its contents all at once.
2024-04-21 17:12:36 +02:00
..
2024-04-21 17:12:36 +02:00