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

Re: [PATCH] mailmap: xcalloc mailmap_info

From
Junio C Hamano <gitster@pobox.com>
Date
Nov 17, 2011, 01:10 UTC
Message-ID
<7v8vnfpn9v.fsf@alter.siamese.dyndns.org>
In-Reply-To
<1321487473-29194-1-git-send-email-marcandre.lureau@gmail.com>
Marc-André Lureau <marcandre.lureau@gmail.com> writes:
Show 5 quoted lines
> This is to avoid reaching free of uninitialized members.
>
> With an invalid .mailmap (and perhaps in other cases), it can reach
> free(mi->name) with garbage for example.
> ---
Sign-off?

Thanks. We might want to turn xmalloc() followed by memset(,0,) for the allocation of the mailmap entry itself in the same function, but that is a minor issue.

Show 16 quoted lines
>  mailmap.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/mailmap.c b/mailmap.c
> index 02fcfde..fbf7764 100644
> --- a/mailmap.c
> +++ b/mailmap.c
> @@ -88,7 +88,7 @@ static void add_mapping(struct string_list *map,
>  			me->email = xstrdup(new_email);
>  		}
>  	} else {
> -		struct mailmap_info *mi = xmalloc(sizeof(struct mailmap_info));
> +		struct mailmap_info *mi = xcalloc(1, sizeof(struct mailmap_info));
>  		debug_mm("mailmap: adding (complex) entry for %s at index %d\n", old_email, index);
>  		if (new_name)
>  			mi->name = xstrdup(new_name);
Previous: Marc-André LureauNext: Marc-André Lureau
Message 2 of 3 in “mailmap: xcalloc mailmap_info”
  1. mailmap: xcalloc mailmap_infoMarc-André Lureau, Nov 16, 2011
  2. Junio C HamanoNov 17, 2011
  3. mailmap: xcalloc mailmap_infoMarc-André Lureau, Nov 17, 2011

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.