format-patch: use default email for generating message ids
authorJeff King <peff@peff.net>
Mon, 21 May 2012 23:10:08 +0000 (19:10 -0400)
committerJunio C Hamano <gitster@pobox.com>
Tue, 22 May 2012 16:07:53 +0000 (09:07 -0700)
We try to generate a sane message id for cover letters and
threading by appending some changing bits to the front of
the user's email address. The current code parses the email
out of the results of git_committer_info, but we can do this
much more easily by just calling ident_default_email
ourselves.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/log.c

index 690caa7..656bddf 100644 (file)
@@ -737,15 +737,9 @@ static void get_patch_ids(struct rev_info *rev, struct patch_ids *ids, const cha
 
 static void gen_message_id(struct rev_info *info, char *base)
 {
-       const char *committer = git_committer_info(IDENT_WARN_ON_NO_NAME);
-       const char *email_start = strrchr(committer, '<');
-       const char *email_end = strrchr(committer, '>');
        struct strbuf buf = STRBUF_INIT;
-       if (!email_start || !email_end || email_start > email_end - 1)
-               die(_("Could not extract email from committer identity."));
-       strbuf_addf(&buf, "%s.%lu.git.%.*s", base,
-                   (unsigned long) time(NULL),
-                   (int)(email_end - email_start - 1), email_start + 1);
+       strbuf_addf(&buf, "%s.%lu.git.%s", base,
+                   (unsigned long) time(NULL), ident_default_email());
        info->message_id = strbuf_detach(&buf, NULL);
 }