Le 30/12/2016 à 21:02, Richard Heck a écrit :
On 12/30/2016 12:15 PM, Guillaume Munch wrote:

Thanks for the patch. It is the same as calling fixIfBroken in
GuiView::structureChanged (as attached) which I agree becomes even
simpler. But, provided one accepts the idea that DocIterators hold
perishable pointers that need to be fixed (I do not see any way out of
it), I find it better to fix them the moment we know that they are
broken.

This seems fine to me, though maybe a bit of overkill.

I went for the simpler patch, not because the other is overkill but
because it does not address the real issue anyway.

I went for sanitize instead of fixIfBroken, because the latter truncates
the cursor.


However, I still miss how and when all the cursors not connected
to the GuiView are being fixed, though. Any idea?

I worried about this, too, and I'm not sure they are fixed. One case to
worry
about would be if Scott's file were open in two windows. But my patch still
seems to work. You might want to try this one, too.

It works, but truncates the cursor, so I imagine that fixIfBroken is
called when switching buffer views.


Reply via email to