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

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

From
Junio C Hamano <gitster@pobox.com>
Date
Aug 7, 2014, 19:28 UTC
Message-ID
<xmqq1tssksk6.fsf@gitster.dls.corp.google.com>
In-Reply-To
<20140807180435.GD12427@google.com>
Jonathan Nieder <jrnieder@gmail.com> writes:
Show 32 quoted lines
> Matthieu Moy wrote:
>
>> Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
>> ---
>> Valgrind confirms, one less unreachable block ;-).
>
> This belongs in the commit message.
>
> [...]
>> --- 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.
Exactly ;-).
Show 7 quoted lines
>
> 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.
Thanks.
Previous: Jonathan Nieder
Message 3 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.