threads / patch / 34434

patchcommit: Fix a memory leak in determine_author_info

Subject: [PATCH] commit: Fix a memory leak in determine_author_info

## tl;dr

3 messages between Jul 14, 2013 and Jul 15, 2013. Diffs are folded; open one to read it.

replies: 2people: 2as markdown or json

Stefan Beller· Jul 14, 2013, 14:01 UTC · lore
The date variable is assigned new memory via xmemdupz and 2 lines later
it is assigned new memory again via xmalloc, but the first assignment
is never freed nor used.
---
 builtin/commit.c | 1 -
 1 file changed, 1 deletion(-)
Show changes to builtin/commit.c +0 −1
diff --git a/builtin/commit.c b/builtin/commit.c
index 790e5ab..00da83c 100644
--- a/builtin/commit.c
+++ b/builtin/commit.c
@@ -534,7 +534,6 @@ static void determine_author_info(struct strbuf *author_ident)
 					(lb - strlen(" ") -
 					 (a + strlen("\nauthor "))));
 		email = xmemdupz(lb + strlen("<"), rb - (lb + strlen("<")));
-		date = xmemdupz(rb + strlen("> "), eol - (rb + strlen("> ")));
 		len = eol - (rb + strlen("> "));
 		date = xmalloc(len + 2);
 		*date = '@';
-- 
1.8.3.2.806.gdee5b9b
Junio C Hamano· Jul 15, 2013, 14:42 UTC · re: Stefan Beller · lore

Re: [PATCH] commit: Fix a memory leak in determine_author_info

Stefan Beller <stefanbeller@googlemail.com> writes:
Show 19 quoted lines
> The date variable is assigned new memory via xmemdupz and 2 lines later
> it is assigned new memory again via xmalloc, but the first assignment
> is never freed nor used.
> ---
>  builtin/commit.c | 1 -
>  1 file changed, 1 deletion(-)
>
> diff --git a/builtin/commit.c b/builtin/commit.c
> index 790e5ab..00da83c 100644
> --- a/builtin/commit.c
> +++ b/builtin/commit.c
> @@ -534,7 +534,6 @@ static void determine_author_info(struct strbuf *author_ident)
>  					(lb - strlen(" ") -
>  					 (a + strlen("\nauthor "))));
>  		email = xmemdupz(lb + strlen("<"), rb - (lb + strlen("<")));
> -		date = xmemdupz(rb + strlen("> "), eol - (rb + strlen("> ")));
>  		len = eol - (rb + strlen("> "));
>  		date = xmalloc(len + 2);
>  		*date = '@';
Makes sense. I'd assume this is signed-off?
Stefan Beller· Jul 15, 2013, 14:46 UTC · re: Junio C Hamano · lore

Re: [PATCH] commit: Fix a memory leak in determine_author_info

On 07/15/2013 04:42 PM, Junio C Hamano wrote:
Show 24 quoted lines
> Stefan Beller <stefanbeller@googlemail.com> writes:
> 
>> The date variable is assigned new memory via xmemdupz and 2 lines later
>> it is assigned new memory again via xmalloc, but the first assignment
>> is never freed nor used.
>> ---
>>  builtin/commit.c | 1 -
>>  1 file changed, 1 deletion(-)
>>
>> diff --git a/builtin/commit.c b/builtin/commit.c
>> index 790e5ab..00da83c 100644
>> --- a/builtin/commit.c
>> +++ b/builtin/commit.c
>> @@ -534,7 +534,6 @@ static void determine_author_info(struct strbuf *author_ident)
>>  					(lb - strlen(" ") -
>>  					 (a + strlen("\nauthor "))));
>>  		email = xmemdupz(lb + strlen("<"), rb - (lb + strlen("<")));
>> -		date = xmemdupz(rb + strlen("> "), eol - (rb + strlen("> ")));
>>  		len = eol - (rb + strlen("> "));
>>  		date = xmalloc(len + 2);
>>  		*date = '@';
> 
> Makes sense. I'd assume this is signed-off?
> 

As I realised I did not sign it, I resend it with some other findings a few hours later, so you'll find it there as well.

See Message-ID <1373837749-14402-2-git-send-email-stefanbeller@googlemail.com> [PATCH 2/4] commit: Fix a memory leak in determine_author_info

← back to recent threads