Re: [PATCH v2] fsmonitor: fix khash memory leak in do_handle_client
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jan 1, 2026, 23:14 UTC
- Message-ID
- <xmqqbjjdc4d0.fsf@gitster.g>
- In-Reply-To
- <pull.2148.v2.git.git.1767191943962.gitgitgadget@gmail.com>
"Paul Tarjan via GitGitGadget" <gitgitgadget@gmail.com> writes:
Show 16 quoted lines
> From: Paul Tarjan <github@paulisageek.com> > > The do_handle_client() function allocates a khash table to de-duplicate > pathnames when responding to client requests. However, kh_release_str() > was used instead of kh_destroy_str(). The release function only frees > internal arrays (flags, keys, vals) but not the struct itself, which is > allocated by kh_init_str() via xcalloc. This caused a 40-byte leak per > client request. > > Fix by using kh_destroy_str() which properly frees both internal arrays > and the struct itself. Also move the cleanup to the cleanup section and > initialize shown to NULL so that kh_destroy_str() is safe to call on all > exit paths. > > Signed-off-by: Paul Tarjan <github@paulisageek.com> > ---
This is already in v4 of the other larger fsmonitor-linux patch, right?
Thanks.