From fb29773fdada37d8bbcf6a270fe4bb7fdc8fff04 Mon Sep 17 00:00:00 2001 From: Stephan Bosch <stephan@rename-it.nl> Date: Sat, 2 Jan 2016 17:13:00 +0100 Subject: [PATCH] lib-sieve: Forgot to enable header unfolding for (mime) headers parsed from the whole message. --- src/lib-sieve/sieve-message.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/lib-sieve/sieve-message.c b/src/lib-sieve/sieve-message.c index bfcca53c9..25f763c45 100644 --- a/src/lib-sieve/sieve-message.c +++ b/src/lib-sieve/sieve-message.c @@ -1078,6 +1078,7 @@ static int sieve_message_parts_add_missing struct mail *mail = sieve_message_get_mail(renv->msgctx); enum message_parser_flags mparser_flags = MESSAGE_PARSER_FLAG_INCLUDE_MULTIPART_BLOCKS; + enum message_header_parser_flags hparser_flags = 0; ARRAY(struct sieve_message_header) headers; struct sieve_message_part *body_part, *header_part, *last_part; struct message_parser_ctx *parser; @@ -1114,6 +1115,7 @@ static int sieve_message_parts_add_missing if (iter_all) { t_array_init(&headers, 64); hdr_content = t_str_new(512); + hparser_flags |= MESSAGE_HEADER_PARSER_FLAG_CLEAN_ONELINE; } else { memset(&headers, 0, sizeof(headers)); } @@ -1122,10 +1124,10 @@ static int sieve_message_parts_add_missing decoder = message_decoder_init(NULL, 0); // FIXME: currently not tested with edit-mail. - //parser = message_parser_init_from_parts(parts, input, 0, - //mparser_flags); - parser = message_parser_init - (pool_datastack_create(), input, 0, mparser_flags); + //parser = message_parser_init_from_parts(parts, input, + // hparser_flags, mparser_flags); + parser = message_parser_init(pool_datastack_create(), + input, hparser_flags, mparser_flags); while ( (ret=message_parser_parse_next_block (parser, &block)) > 0 ) { struct sieve_message_part **body_part_idx; -- GitLab