At 09:13 AM 4/11/02 -0400, Ron Jarrell wrote:
>I'm guessing that there's something wrong in the way Tagger calls
>Parser in this case... I'll eyeball the code again myself; maybe a
>fresh pair of eyes will catch something you're missing cause you've
>been staring at it too long.
Hah!
This is my morning for epiphanies. I suppose that it helps that this turns out to be
very similar to a problem the mirapoint scanners were having this morning, and I
already had the brainstorm that figured out their continuation header processing was
broken.
You've got a logic flaw. Let me guess, you don't indent much when you write prose, do
you :-)?
You allow through lines that start with a whitespace into the new message object that
you're building to parse the headers out of, since they're likely a continuation
header. But they're likely not a continuation header *in the body of the message*!
Send a message to a list with topics defined. (See my previous note about the bug in
topics_enabled - only the
gui uses it, Tagger keys on topics defined.
Indent the first line. Like:
Hi there
You should get the error when Parser hits it before it hits anything else in the new
"header".
Tagger.py:96 says:
if line[0] not in ' \t' and line.find(':') < 0:
So any line that starts with a whitespace gets bundled into the test, even if the
*previous* line wasn't a possible header line.
If you want to support continuation lines on pseudo-headers in the body, you either
need to maintain state like Parser does, to decide whether it's really a continuation,
or just an indented line, or just bag that test all together, and only accept lines
with
a ":", and not support continuation lines in the pseudo-headers.
_______________________________________________
Mailman-Developers mailing list
[EMAIL PROTECTED]
http://mail.python.org/mailman/listinfo/mailman-developers