While populating the `repository_format` structure may cause us to allocate memory, we do not call `clear_repository_format()` in some places and thus potentially leak memory. Fix this. Signed-off-by: Patrick Steinhardt <ps@xxxxxx> --- setup.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/setup.c b/setup.c index b9474b163a0..fc592dc6dd5 100644 --- a/setup.c +++ b/setup.c @@ -722,6 +722,7 @@ int upgrade_repository_format(int target_version) ret = 1; out: + clear_repository_format(&repo_fmt); strbuf_release(&repo_version); strbuf_release(&err); return ret; @@ -2199,6 +2200,7 @@ int init_db(const char *git_dir, const char *real_git_dir, git_dir, len && git_dir[len-1] != '/' ? "/" : ""); } + clear_repository_format(&repo_fmt); free(original_git_dir); return 0; } -- 2.42.0
Attachment:
signature.asc
Description: PGP signature