On Mon, 22 Jan 2001, Martin Sevior wrote:
> On Sun, 21 Jan 2001, Jesper Skov wrote:
>
> > >>>>> "Jesper" == Jesper Skov <[EMAIL PROTECTED]> writes:
> >
> > Jesper> The problem is that the forced line/page break ends up in the
> > Jesper> document content for some reason:
> >
> > This is alright after all.
> >
> > Jesper> So when FV_View::insertParagraphBreak() gets to
> > Jesper> pt_PieceTable::_insertStrux it tries to break a fragment of
> > Jesper> length 3 into two new fragments [as you can see in the above,
> > Jesper> there is no fragment with length 3!]
> >
> > But this still puzzles me. I'll look closer at it now.
>
> This might help. Within the piecetable you have
>
> loc1 loc2 loc3
> 2 <linebeak> <next char after linebreak>
>
Whoops! This is wrong. I just reread your original message. I know what's
happening now.
Within the piecetable in the same span you have.
loc1 loc2 loc3
1 <linebreak> 2
This is where your 3 character run occurs.
The linebreak is just another unicode character in the piecetable. On
screen the cursor is between the 1 and the linebreak. However
the doc position returned by findPointCoords might be after the linebreak since
it is a zero length run. I guess the bug is triggered by this confusion.
Cheers!
Martin