Another Quoted-Printable and MessageClient issue/bug

Another Quoted-Printable and MessageClient issue/bug

Post by JonB » Sun, 12 Dec 2004 03:18:24


This test case exposes a problem or two (or three):

data := TIdEncoderQuotedPrintable.EncodeString('<li>WHMA Conference
Hershey, PA      April 6-8<br>'#13#10);
Assert(data = '<li>WHMA Conference Hershey, PA
    April 6-8<br>'#13#10);

The test string makes it a little hard to see but the string is 71
characters long and it encodes to:

lots-of-stuff#13#10=

Doink - that's a CRLF then soft-return. Send that in an email and see what
you get ;)

Issue 1: don't add soft returns if the string is done.

Issue 2: don't add a soft return after a hard return.

Looming Issue 3: don't add a soft return in the middle of a hard return -
that bug is hiding in there I'm sure.

Minor question: Why 71 and not 76? The RFC says max length is 76 + 2 (for
CRLF) = 78

What does this have to do with MessageClient? It adds EOL onto the line
then has the line encoded.

I'd say you want encode (which can add EOLs as needed) then added the final
EOL after encoding.

Is there a bug tracker I should be logging this stuff in? Is Indy on Source
Forge?