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

Re: [PATCH] builtin/log.c: fix minor memory leak

From
Jonathan Nieder <jrnieder@gmail.com>
Date
Aug 7, 2014, 18:04 UTC
Message-ID
<20140807180435.GD12427@google.com>
In-Reply-To
<1407431617-4156-1-git-send-email-Matthieu.Moy@imag.fr>
Matthieu Moy wrote:
> Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
> ---
> Valgrind confirms, one less unreachable block ;-).
This belongs in the commit message.
[...]
Show 14 quoted lines
> --- a/builtin/log.c
> +++ b/builtin/log.c
> @@ -857,20 +857,21 @@ static void add_branch_description(struct strbuf *buf, const char *branch_name)
>  {
>  	struct strbuf desc = STRBUF_INIT;
>  	if (!branch_name || !*branch_name)
>  		return;
>  	read_branch_desc(&desc, branch_name);
>  	if (desc.len) {
>  		strbuf_addch(buf, '\n');
>  		strbuf_addbuf(buf, &desc);
>  		strbuf_addch(buf, '\n');
>  	}
> +	strbuf_release(&desc);

This is an old one. The leak was introduced by v1.7.9-rc1~1^2~12 (format-patch: use branch description in cover letter, 2011-09-21).

I was a little scared to see a leak in 'git log' code, since most of what log does involves looping over many commits. Luckily this one is only used in make_cover_letter to create a cover letter describing the single branch on the command line, making it is a small, one-time leak.

Less noise from static and dynamic analysis tools is still worthwhile, so for what it's worth,

Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Thanks.
Previous: Matthieu MoyNext: Junio C Hamano
Message 2 of 3 in “builtin/log.c: fix minor memory leak”
  1. builtin/log.c: fix minor memory leakMatthieu Moy, Aug 7, 2014
  2. Jonathan NiederAug 7, 2014
  3. Junio C HamanoAug 7, 2014

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.