Subject: Re: [PATCH 02/23] read-cache: fix leaking hash context in `do_write_index()`

From: Derrick Stolee <[email-masked]>
Date: Mon, 30 Sep 2024 10:05:13 -0400

On 9/30/24 5:13 AM, Patrick Steinhardt wrote:
> When writing an index with the EOIE extension we allocate a separate
> hash context. We never free that context though, causing a memory leak.
> Plug it.
> 
> This leak is exposed by t9210, but plugging it alone does not make the
> whole test suite pass.
> 
> Signed-off-by: Patrick Steinhardt <[email-masked]>
> ---
>   read-cache.c | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/read-cache.c b/read-cache.c
> index 764fdfec46..0fb5e0d372 100644
> --- a/read-cache.c
> +++ b/read-cache.c
> @@ -3124,6 +3124,7 @@ static int do_write_index(struct index_state *istate, struct tempfile *tempfile,
>   	if (f)
>   		free_hashfile(f);
>   	strbuf_release(&sb);
> +	free(eoie_c);
>   	free(ieot);
>   	return ret;
>   }

Thank you for finding and fixing this! This version should be
used instead of the similar patch I sent today.

Thanks,
-Stolee