Subject: Re: [PATCH] fill_oids_from_packs: fix memory leak when fill_oids_from_packs failed

From: Patrick Steinhardt <[email-masked]>
Date: Fri, 9 May 2025 07:38:32 +0200

On Thu, May 08, 2025 at 01:51:15PM +0000, Lidong Yan via GitGitGadget wrote:
> From: Lidong Yan <[email-masked]>
> 
> In commit-graph.c line 1930, if open_pack_index failed, memory allocated
> in line 1925 by add_packed_git will leak. Simply add close_pack and
> free(p) will solve this problem.

The same comments apply to this commit message as Junio has already
mentioned in other commits. We don't typically point to exact line
numbers, but rather mention for example the function name.

> diff --git a/commit-graph.c b/commit-graph.c
> index 6394752b0b0..93d867770b0 100644
> --- a/commit-graph.c
> +++ b/commit-graph.c
> @@ -1929,6 +1929,8 @@ static int fill_oids_from_packs(struct write_commit_graph_context *ctx,
>  		}
>  		if (open_pack_index(p)) {
>  			ret = error(_("error opening index for %s"), packname.buf);
> +			close_pack(p);
> +			free(p);
>  			goto cleanup;
>  		}
>  		for_each_object_in_pack(p, add_packed_commits, ctx,

The change itself looks correct to me. Thanks!

Patrick