eat soft linebreaks in quoted printable text, sr=mscott 268459

This commit is contained in:
bienvenu%nventure.com 2007-02-15 23:30:04 +00:00
Родитель 391f74f48d
Коммит 0f3efceae5
1 изменённых файлов: 12 добавлений и 1 удалений

Просмотреть файл

@ -1507,11 +1507,22 @@ NS_MSG_BASE void MsgStripQuotedPrintable (unsigned char *src)
else else
{ {
// first char after '=' isn't hex. check if it's a normal char // first char after '=' isn't hex. check if it's a normal char
// or a soft line break. // or a soft line break. If it's a soft line break, eat the
// CR/LF/CRLF.
if (src[srcIdx + 1] == nsCRT::CR || src[srcIdx + 1] == nsCRT::LF) if (src[srcIdx + 1] == nsCRT::CR || src[srcIdx + 1] == nsCRT::LF)
{
srcIdx++; // soft line break, ignore the '='; srcIdx++; // soft line break, ignore the '=';
if (src[srcIdx] == nsCRT::CR || src[srcIdx] == nsCRT::LF)
{
srcIdx++;
if (src[srcIdx] == nsCRT::LF)
srcIdx++;
}
}
else // normal char, copy it. else // normal char, copy it.
{
dest[destIdx++] = src[srcIdx++]; // aka token[0] dest[destIdx++] = src[srcIdx++]; // aka token[0]
}
continue; continue;
} }