mailinfo: correctly handle multiline 'Subject:' header
authorKirill Smelkov <kirr@landau.phys.spbu.ru>
Wed, 7 Jan 2009 22:43:42 +0000 (01:43 +0300)
committerJunio C Hamano <gitster@pobox.com>
Sun, 11 Jan 2009 01:54:30 +0000 (17:54 -0800)
commit353aaf2fa136d34db64d1e4af12cc12431466a9e
treefe661fd75f6f50b576f0cf292b3e3f8b57a24897
parent141201d124f3663a98e0f362c1af7f5f7b58dabb
mailinfo: correctly handle multiline 'Subject:' header

When native language (RU) is in use, subject header usually contains several
parts, e.g.

Subject: [Navy-patches] [PATCH]
=?utf-8?b?0JjQt9C80LXQvdGR0L0g0YHQv9C40YHQvtC6INC/0LA=?=
=?utf-8?b?0LrQtdGC0L7QsiDQvdC10L7QsdGF0L7QtNC40LzRi9GFINC00LvRjyA=?=
=?utf-8?b?0YHQsdC+0YDQutC4?=

This exposes several bugs in builtin-mailinfo.c:

1. decode_b_segment: do not append explicit NUL -- explicit NUL was preventing
   correct header construction on parts concatenation via strbuf_addbuf in
   decode_header_bq.  Fixes:

-Subject: Изменён список пакетов необходимых для сборки
+Subject: Изменён список па

Then

2. Do not emit '\n' between "encoded-word" where RFC2046 says that linear
   white space between them are ignored when displaying.  Fixes:

-Subject: Изменён список пакетов необходимых для сборки
+Subject: Изменён список па кетов необходимых для сборки

Signed-off-by: Kirill Smelkov <kirr@mns.spb.ru>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin-mailinfo.c
t/t5100-mailinfo.sh
t/t5100/info0012 [new file with mode: 0644]
t/t5100/msg0012 [new file with mode: 0644]
t/t5100/patch0012 [new file with mode: 0644]
t/t5100/sample.mbox