builtin/am: fix memory leak in split_mail_stgit_series

In builtin/am.c:split_mail_stgit_series, if `fopen` failed,
`series_dir_buf` allocated by `xstrdup` will leak. Add `free` in
`!fp` if branch will prevent the leak.

Signed-off-by: Lidong Yan <502024330056@smail.nju.edu.cn>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Lidong Yan
2025-05-12 02:07:27 +00:00
committed by Junio C Hamano
parent 2f323bb162
commit e5dd0a05ed

View File

@@ -848,8 +848,10 @@ static int split_mail_stgit_series(struct am_state *state, const char **paths,
series_dir = dirname(series_dir_buf);
fp = fopen(*paths, "r");
if (!fp)
if (!fp) {
free(series_dir_buf);
return error_errno(_("could not open '%s' for reading"), *paths);
}
while (!strbuf_getline_lf(&sb, fp)) {
if (*sb.buf == '#')