BUG/MINOR: quic: Fix memory leak in quic_deallocate_dghdlrs()
Some checks are pending
Contrib / admin/halog/ (push) Waiting to run
Contrib / dev/flags/ (push) Waiting to run
Contrib / dev/haring/ (push) Waiting to run
Contrib / dev/hpack/ (push) Waiting to run
Contrib / dev/poll/ (push) Waiting to run
VTest / Generate Build Matrix (push) Waiting to run
VTest / (push) Blocked by required conditions
Windows / Windows, gcc, all features (push) Waiting to run

When deallocating the QUIC datagram handlers, the per-thread buffer
allocated inside quic_dghdlrs[i].buf.buffer was missing a free().
This led to a memory leak on exit or reload.

Fix this by freeing each thread buffer before releasing the main
quic_dghdlrs array.
This commit is contained in:
Frederic Lecaille 2026-05-19 17:06:08 +02:00
parent 1974240520
commit 9a39e55ded

View file

@ -625,8 +625,10 @@ static int quic_deallocate_dghdlrs(void)
int i;
if (quic_dghdlrs) {
for (i = 0; i < global.nbthread; ++i)
for (i = 0; i < global.nbthread; ++i) {
free(quic_dghdlrs[i].buf.buffer);
tasklet_free(quic_dghdlrs[i].task);
}
free(quic_dghdlrs);
}