apply: don't leak fd on fdopen() error

Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>

René Scharfe committed Apr 5, 2024 at 12:58 UTC 2b1f456adf8f0b574468661a65548106b317459b
1 file changed +5 -2
apply.c
+5 -2
index 7608e3301c..9a131a5ecd 100644 --- a/apply.c +++ b/apply.c @@ -4644,8 +4644,11 @@ static int write_out_one_reject(struct apply_state *state, struct patch *patch) return error_errno(_("cannot open %s"), namebuf); } rej = fdopen(fd, "w"); - if (!rej) - return error_errno(_("cannot open %s"), namebuf); + if (!rej) { + error_errno(_("cannot open %s"), namebuf); + close(fd); + return -1; + } /* Normal git tools never deal with .rej, so do not pretend * this is a git patch by saying --git or giving extended