<<< Date Index >>>     <<< Thread Index >>>

Re: format=flowed breakage



Hi,

* Thomas Roessler [07-03-20 10:46:04 +0100] wrote:
On 2007-03-20 10:27:04 +0100, Thomas Roessler wrote:

As an aside, the code used to implement this (in the instance around
line 816 of rfc2047.c) looks like an incredibly convoluted and
inefficient way of saying something like this:

  if (islwsp (*s))
  {
    *d = ' ';
    d++;
    dlen--;
  }
    while (islwsp (*s) && *s)
    s++;

Yikes.  This looks as follows in the message on the wire.

SP SP SP } CR LF
SP SP SP CR LF
SP SP SP while ...

The new format=flowed handler pulls these lines together and
therefore messes up the formatting of the code.

Can you please forward such a mail to me privately please?

It shouldn't pull all 3 lines together but only lines 2 and 3 since line 2 has a SP before CRLF.

Reverting and going back to the old one will fix the display problem in mutt for sure, but not in other mailers since they may interpret f=f correctly and hence may flow these lines and mess up the display.

Sorry, but I consider these cases more or less "user error". Producing f=f either requires the MUA and the editor work together perfectly by being bundled/integrated or the user taking extreme care before actually sending the message (I for example, always send f=f but also have ':set list' in vim to see line endings).

Even if you unset $text_flowed and send such messages, the next one may come and reply with it having $text_flowed set... which could mess up the display using an arbitrary mailer's display, i.e. not mutt and you'll still loose without even noticing the problem in the first place/the ability to reproduce it.

format=flowed is often refered to as "format=flawed" just because of exactly these issues... :)

  bye, Rocco
--
:wq!