From 41dff82b54640e4b17ee0c9c17917dd6396fd90f Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Mon, 1 Jan 2007 23:32:30 +0100 Subject: [PATCH] [CRITICAL] fixed memory leak in session_free() Since the introduction of hdr_idx, session_free() had not been updated to free the header ! It implied a consumption of about 400 bytes per new session. --- src/session.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/session.c b/src/session.c index 7a19136aa..45af997c1 100644 --- a/src/session.c +++ b/src/session.c @@ -39,6 +39,9 @@ void session_free(struct session *s) if (s->rep) pool_free(buffer, s->rep); + if (s->hreq.hdr_idx.v != NULL) + pool_free_to(s->fe->hdr_idx_pool, s->hreq.hdr_idx.v); + if (s->rsp_cap != NULL) { struct cap_hdr *h; for (h = s->fe->fiprm->rsp_cap; h; h = h->next) {