Hello Loïc, and thanks for the good report.

 On Tuesday, December 11, 2007 at 17:30:13 +0100, Loïc Minier wrote:

> My terminal is completely garbled when I load up a particular message

    The only unusual thing in this message is that 4 lines begin by a
character U+FEFF (the ZERO WIDTH NO-BREAK SPACE). Those chars should be
invisible, like a space drawn on zero columns wide. But on your
screenshot, they appear to move the second character, like the "H" of
"Hi Kash", from the expected leftmost column #1 to the last column of
the previous line. The same happens for the "h" of "http:", and for the
"I" of "It's based on". Just like if something wrongly counted that the
column width of U+FEFF was -1 instead of 0.

    The other garblings, like those parasite header lines, may be only
secondary consequences of the above problem, and may perhaps disappear
on <redraw-screen> (^L).

    Note that such U+FEFF has in UCS context the alternate function of
a BOM (Byte Order Mark). However we're in UTF-8 context, always
bigendian, where a BOM has no sense.

    I'm sorry I can't currently investigate more. This should be
reproduced, and if confirmed then upstreamed. I attach a small test
QP UTF-8 text with an U+FEFF prepending a line, and another in the
middle of a word.


Bye!    Alain.
-- 
« if you believe in Glibc wcwidth(), I've got a bridge to sell you. »
UTF-8 test file.
Line prepended by U+FEFF.
U+FEFF in the middle of the two d.

Reply via email to