Changes since v2: o Removed utf8 translation before scissors line check in check_inbody_header (I was thinking of support for encodings like UTF-16, but I guess those don't work with the current reencode_string anyway since it uses strlen internally) With the above change, it is actually no longer necessary to make is_scissors_line take plain char * (the second patch) - I think that that patch still improves the code, but let me know if you want me to remove it from this patch set. Jonathan Tan (3): mailinfo: separate in-body header processing mailinfo: make is_scissors_line take plain char * mailinfo: handle in-body header continuations mailinfo.c | 116 +++++++++++++++++++++++++---------- mailinfo.h | 1 + t/t4150-am.sh | 23 +++++++ t/t5100-mailinfo.sh | 2 +- t/t5100/info0018 | 5 ++ t/t5100/info0018--no-inbody-headers | 5 ++ t/t5100/msg0015 | 2 - t/t5100/msg0018 | 2 + t/t5100/msg0018--no-inbody-headers | 8 +++ t/t5100/patch0018 | 6 ++ t/t5100/patch0018--no-inbody-headers | 6 ++ t/t5100/sample.mbox | 19 ++++++ 12 files changed, 159 insertions(+), 36 deletions(-) create mode 100644 t/t5100/info0018 create mode 100644 t/t5100/info0018--no-inbody-headers create mode 100644 t/t5100/msg0018 create mode 100644 t/t5100/msg0018--no-inbody-headers create mode 100644 t/t5100/patch0018 create mode 100644 t/t5100/patch0018--no-inbody-headers -- 2.10.0.rc2.20.g5b18e70