Hm. I have 1.2.5 source locally, and it looks like in
mutt_set_encoding() in sendlib.c, the following logic may be
faulty:
static void mutt_set_encoding (BODY *b, CONTENT *info)
{
if (b->type == TYPETEXT)
{
if (info->lobin || info->linemax > 990 || (info->from &&
option (OPTENCODEFROM)))
b->encoding = ENCQUOTEDPRINTABLE;
else if (info->hibin)
b->encoding = option (OPTALLOW8BIT) ?
ENC8BIT : ENCQUOTEDPRINTABLE;
else
b->encoding = ENC7BIT;
}
...
}
Note that if hibin is greater than zero, but lobin is also
greater than zero, we'll use quoted-printable.
Shouldn't it be something more like:
if (info->hibin) {
b->encoding = option (OPTALLOW8BIT) ? ENC8BIT : ENCQUOTEDPRINTABLE;
} else if (info->lobin || info->linemax > 990 ||
(info->from && option (OPTENCODEFROM)))
{
b->encoding = ENCQUOTEDPRINTABLE;
}
else
b->encoding = ENC7BIT;
...
That is, if we have 8-bit characters, don't even consider
quoted unless OPTALLOW8BIT is false.
Brian
--
Brian Grayson, SysPerf (System Performance, Modeling, and Simulation)
[EMAIL PROTECTED]
Somerset Design Center
Motorola
Austin, TX