Dov Feldstern wrote:
Dov Feldstern wrote:
Dov Feldstern wrote:
Anyhow, to reproduce:
1) type a long long string with no space, until it breaks to the next
line.
2) from the last position in the paragraph (it only works from there)
start backspacing. When you try to delete the last remaining character
on the line -- kaboom!
Attached is the trace; looks familiar...
The crash occurs in a clean svn, so these patches are still OK by me.
I'm working on the crash, Stefan would probably be able to solve it much
more quickly...
Attached is a fix for the crash. I am not sure that it's correct, but it
does solve the problem. Any comments?
Index: src/Text2.cpp
===================================================================
--- src/Text2.cpp (revision 18598)
+++ src/Text2.cpp (working copy)
@@ -764,10 +764,6 @@
if (par.empty())
return;
- // if on boundary or at paragraph end, set font of previous char
- if ((pos > 0 && cur.boundary()) || pos == cur.lastpos())
- --pos;
-
// we changed the line and the bidi tables are outdated?
if (!bidi.inRange(pos))
bidi.computeTables(par, cur.buffer(), cur.textRow());