From: Eric W. Biederman Date: Tue, 23 May 2006 19:58:36 +0000 (-0600) Subject: Allow in body headers beyond the in body header prefix. X-Git-Tag: v1.4.0-rc1~49^2~1 X-Git-Url: https://git.octo.it/?p=git.git;a=commitdiff_plain;h=2dec02b1ecafc47d4031d0a68a94c775a6a9ff9e Allow in body headers beyond the in body header prefix. - handle_from is fixed to not mangle it's input line. - Then handle_inbody_header is allowed to look in the body of a commit message for additional headers that we haven't already seen. This allows patches with all of the right information in unfortunate places to be imported. Signed-off-by: Eric W. Biederman Signed-off-by: Junio C Hamano --- diff --git a/mailinfo.c b/mailinfo.c index a2b15e26..241bfb9e 100644 --- a/mailinfo.c +++ b/mailinfo.c @@ -72,11 +72,14 @@ static int bogus_from(char *line) return 1; } -static int handle_from(char *line) +static int handle_from(char *in_line) { - char *at = strchr(line, '@'); + char line[1000]; + char *at; char *dst; + strcpy(line, in_line); + at = strchr(line, '@'); if (!at) return bogus_from(line); @@ -242,8 +245,6 @@ static int eatspace(char *line) /* First lines of body can have From:, Date:, and Subject: */ static void handle_inbody_header(int *seen, char *line) { - if (*seen & SEEN_PREFIX) - return; if (!memcmp("From:", line, 5) && isspace(line[5])) { if (!(*seen & SEEN_FROM) && handle_from(line+6)) { *seen |= SEEN_FROM;