There were two functions doing almost the same XML quoting of character entities, so implement a library function strbuf_addstr_xml_quoted() and use that in both places. Along the way, do a lot of simplification within imap-send.c, which was doing a lot of its own string management instead of using strbuf. Please note that "git imap-send" is utterly absent from the test suite, probably due to the difficulty of testing without a real IMAP server. I ran some manual tests after my changes and didn't find any problems. The bug that I reported on 2012-11-12, namely that git format-patch --signoff --stdout --attach origin | git imap-send is broken, is not addressed by these patches. Michael Haggerty (8): Add new function strbuf_add_xml_quoted() xml_entities(): use function strbuf_addstr_xml_quoted() lf_to_crlf(): NUL-terminate msg_data::data imap-send: store all_msgs as a strbuf imap-send: correctly report errors reading from stdin imap-send: change msg_data from storing (char *, len) to storing strbuf wrap_in_html(): use strbuf_addstr_xml_quoted() wrap_in_html(): process message in bulk rather than line-by-line http-push.c | 23 +-------- imap-send.c | 157 +++++++++++++++++++++++++++--------------------------------- strbuf.c | 26 ++++++++++ strbuf.h | 6 +++ 4 files changed, 104 insertions(+), 108 deletions(-) -- 1.8.0 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html