Mercurial > dovecot > original-hg > dovecot-1.2
changeset 5001:c0a9bab3fc32 HEAD
CR removing from parsed mails didn't work properly for multipart mails.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sun, 14 Jan 2007 04:48:15 +0200 |
parents | d410ee18ae93 |
children | 82747a8b0b8b |
files | src/lib-mail/message-parser.c |
diffstat | 1 files changed, 6 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-mail/message-parser.c Sun Jan 14 03:49:08 2007 +0200 +++ b/src/lib-mail/message-parser.c Sun Jan 14 04:48:15 2007 +0200 @@ -652,8 +652,7 @@ off_t diff) { while (parts != NULL) { - uoff_t old_size = parts->header_size.physical_size + - parts->body_size.physical_size; + parts->physical_pos += diff; if (use_crlf) { parts->header_size.physical_size = @@ -667,18 +666,18 @@ parts->body_size.physical_size = parts->body_size.virtual_size - parts->body_size.lines; + + diff -= parts->header_size.lines; } - parts->physical_pos += diff; - - diff += (off_t)(parts->header_size.physical_size + - parts->body_size.physical_size) - - (off_t)old_size; if (parts->children != NULL) { message_parser_set_crlfs_diff(parts->children, use_crlf, diff); } + if (!use_crlf) + diff -= parts->body_size.lines; + parts = parts->next; } }