mirror of
https://github.com/git/git.git
synced 2025-03-18 21:28:46 +00:00
mailinfo: always clean up rfc822 header folding
Without the "-k" option, mailinfo will convert a folded subject header like: Subject: this is a subject that doesn't fit on one line into a single line. With "-k", however, we assumed that these newlines were significant and represented something that the sending side would want us to preserve. For messages created by format-patch, this assumption was broken by a1f6baa (format-patch: wrap long header lines, 2011-02-23). For messages sent by arbitrary MUAs, this was probably never a good assumption to make, as they may have been folding subjects in accordance with rfc822's line length recommendations all along. This patch now joins folded lines with a single whitespace character. This treats header folding purely as a syntactic feature of the transport mechanism, not as something that format-patch is trying to tell us about the original subject. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
00ebc97748
commit
5b38456ec7
@ -400,7 +400,7 @@ static int read_one_header_line(struct strbuf *line, FILE *in)
|
||||
break;
|
||||
if (strbuf_getline(&continuation, in, '\n'))
|
||||
break;
|
||||
continuation.buf[0] = '\n';
|
||||
continuation.buf[0] = ' ';
|
||||
strbuf_rtrim(&continuation);
|
||||
strbuf_addbuf(line, &continuation);
|
||||
}
|
||||
|
@ -58,7 +58,7 @@ test_expect_success 'long subject preserved (format-patch | am)' '
|
||||
test_expect_success 'long subject preserved (format-patch -k | am)' '
|
||||
check_subject long-k
|
||||
'
|
||||
test_expect_failure 'long subject preserved (format-patch -k | am -k)' '
|
||||
test_expect_success 'long subject preserved (format-patch -k | am -k)' '
|
||||
check_subject long-k -k
|
||||
'
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user