--- libs/imap/fetch-original.c 2014-06-09 23:10:28.142875674 +0200 +++ libs/imap/fetch.c 2014-06-10 00:07:12.339532078 +0200 @@ -1353,7 +1353,7 @@ struct rfc2045 *rfcp) { unsigned long n=0; -int c; +int c, last; char buf[BUFSIZ]; unsigned long i; int eol; @@ -1373,7 +1373,10 @@ ++n; if (c != '\n') { - eol=0; + if (c != '\r') + { + eol=0; + } continue; } ++n; @@ -1392,8 +1395,10 @@ writes("}\r\n"); i=0; + c = 0; while (n) { + last = c; c=getc(fp); if (c == '\n') { @@ -1402,7 +1407,7 @@ writemem(buf, i); i=0; } - buf[i++]='\r'; + if (last != '\r') buf[i++]='\r'; if (--n == 0) break; }