git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] apply: don't leak fd on fdopen() error

From
Junio C Hamano <gitster@pobox.com>
Date
Apr 5, 2024, 17:09 UTC
Message-ID
<xmqqv84vvirr.fsf@gitster.g>
In-Reply-To
<5ba55ee4-94c7-4094-a744-584fc623b391@web.de>
René Scharfe <l.s.r@web.de> writes:
Show 20 quoted lines
> Signed-off-by: René Scharfe <l.s.r@web.de>
> ---
>  apply.c | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/apply.c b/apply.c
> index 432837a674..1cfbc2f074 100644
> --- a/apply.c
> +++ b/apply.c
> @@ -4655,8 +4655,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;
> +	}

Ah, true, this fd is what we created in this function, and we should close it. Well spotted.

Will queue.
Show 5 quoted lines
>
>  	/* Normal git tools never deal with .rej, so do not pretend
>  	 * this is a git patch by saying --git or giving extended
> --
> 2.44.0
Previous: René Scharfe
Message 2 of 2 in “apply: don't leak fd on fdopen() error”
  1. apply: don't leak fd on fdopen() errorRené Scharfe, Apr 5, 2024
  2. Junio C HamanoApr 5, 2024

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.