Re: Text layout bugs. (For Tomas and others.)


Subject: Re: Text layout bugs. (For Tomas and others.)
From: Martin Sevior (msevior@mccubbin.ph.unimelb.edu.au)
Date: Sat Jan 05 2002 - 06:27:25 CST


On Sat, 5 Jan 2002, Tomas Frydrych wrote:

>
> > To see what I mean type in about 4 lines of text in full
> > justification. Then delete a character in one word, then press undo.
> > This sometimes results in strange behaviour.
> I cannot create any problem this way, even though I have been
> trying for a while.
>

It takes a while but with enough effort you can get the charWidths out of
synch with the text in runs. The result is very bizarre behaviour. The
cursor skips past characters it should move to. I can do it with a 4 line
document. I created the 4 lines by typing some text then cutting it and
pasting it several times. I belive the bug surfaces following the
splitting of runs. It doesn't need to be full justification. Try deleting
the space between two words on line 3 of a four line document then undoing
it, then deleting the space again and finally changing the font size to 18
or something.

After playing with gdb I can fix the problem by manually setting
m_bfixChars = true in fl_BlockLayout.cpp:format

> I am fairly certain that 2313 is not caused by the layout engine per
> se, but the PS classes.
>

It could be but I'm now also seeing incorrect text width calculations that
appear to go hand in hand with the above bug. It's like the widths of two
characters were added together for one character. I haven't actually
managed to to reproduce 2313 yet.

Cheers

Martin



This archive was generated by hypermail 2b25 : Sat Jan 05 2002 - 06:27:39 CST