mirror of
https://gitlab.com/gnuwget/wget2.git
synced 2026-02-01 14:41:08 +00:00
* 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.