Stefan Schimanski wrote:
I just tested again. With the latest version of the patch (http://permalink.gmane.org/gmane.editors.lyx.devel/85600) I'm getting a crash. To reproduce: (1) make sure RTL option is turned on; (2) start typing (with spaces, just normal typing) until the paragraph breaks to a new line. Start moving backwards (LEFT, assuming LTR). When you hit the beginning of the line and try moving back again, you get a crash. This is the same issue reported by Abdel two weeks ago. Copying the conditions from 1.4 just undoes my fix for that issue. Therefore, I propose to stick with the previous version (http://permalink.gmane.org/gmane.editors.lyx.devel/85585). I reported this yesterday (http://permalink.gmane.org/gmane.editors.lyx.devel/85611), but didn't get any reply...Can you give me a backtrace of it? Tried with RTL and LTR paragraphs, everything works fine, no crash. Also tried Abdel's example file from two weeks ago, no crash.
Attached. Are you sure the RTL option in preferences is turned on? The language you type in does not matter. I'm attaching the a sample file, too. Also, crashes could be machine/OS dependent? I'm on Linux, i686, in debian...
BTW, I Just tested it with the patch you issued today (after correction of whitespace) in http://permalink.gmane.org/gmane.editors.lyx.devel/85807.
Dov
rtl-crash-again.lyx
Description: application/lyx
#0 0xb70e2867 in raise () from /lib/libc.so.6
#1 0xb70e40d8 in abort () from /lib/libc.so.6
#2 0xb7267899 in __gnu_debug::_Error_formatter::_M_error ()
from /usr/lib/libstdc++.so.6
#3 0x08086f13 in lyx::Bidi::level (this=0x8f43dfc, pos=83)
at
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/debug/vector:199
#4 0x083f3577 in lyx::Text::setCurrentFont (this=0x8f43da0, [EMAIL PROTECTED])
at Text2.cpp:780
#5 0x083f3ad6 in lyx::Text::setCursorIntern (this=0x8f43da0, [EMAIL
PROTECTED],
par=0, pos=83, setfont=true, boundary=false) at Text2.cpp:758
#6 0x083f3bc1 in lyx::Text::setCursor (this=0x8f43da0, [EMAIL PROTECTED],
par=0,
pos=83, setfont=true, boundary=false) at Text2.cpp:722
#7 0x083f4198 in lyx::Text::cursorLeft (this=0x8f43da0, [EMAIL PROTECTED])
at Text2.cpp:1003
#8 0x083fe352 in lyx::Text::dispatch (this=0x8f43da0, [EMAIL PROTECTED],
[EMAIL PROTECTED]) at Text3.cpp:458
#9 0x0863537b in lyx::InsetText::doDispatch (this=0x8f43d5c, [EMAIL
PROTECTED],
[EMAIL PROTECTED]) at InsetText.cpp:262
#10 0x085316d6 in lyx::Inset::dispatch (this=0x8f43d5c, [EMAIL PROTECTED],
[EMAIL PROTECTED]) at Inset.cpp:158
#11 0x081b4f03 in lyx::Cursor::dispatch (this=0x8dcd5c8, [EMAIL PROTECTED])
at Cursor.cpp:318
#12 0x08306b8f in lyx::LyXFunc::dispatch (this=0x8cf6550, [EMAIL PROTECTED])
at LyXFunc.cpp:1772
#13 0x0830862b in lyx::LyXFunc::processKeySym (this=0x8cf6550,
[EMAIL PROTECTED], state=lyx::key_modifier::none) at LyXFunc.cpp:377
#14 0x0868c4ad in lyx::frontend::WorkArea::processKeySym (this=0x8d753f4,
[EMAIL PROTECTED], state=lyx::key_modifier::none) at WorkArea.cpp:177
#15 0x086fb54b in lyx::frontend::GuiWorkArea::keyPressEvent (this=0x8d753e0,
e=0xbf928af4) at GuiWorkArea.cpp:427
#16 0xb796de11 in QWidget::event () from /usr/lib/libQtGui.so.4
#17 0xb7beec84 in QFrame::event () from /usr/lib/libQtGui.so.4
#18 0xb7c638af in QAbstractScrollArea::event () from /usr/lib/libQtGui.so.4
#19 0xb792459f in QApplicationPrivate::notify_helper ()
from /usr/lib/libQtGui.so.4
#20 0xb7927318 in QApplication::notify () from /usr/lib/libQtGui.so.4
#21 0x086e20e0 in lyx::frontend::GuiApplication::notify (this=0x8cf9f08,
receiver=0x8d753e0, event=0xbf928af4) at GuiApplication.cpp:237
#22 0xb7973f3e in QApplication::topLevelAt () from /usr/lib/libQtGui.so.4
#23 0xb799efe6 in QX11Info::copyX11Data () from /usr/lib/libQtGui.so.4
#24 0xb79a0dd1 in QX11Info::copyX11Data () from /usr/lib/libQtGui.so.4
#25 0xb797e428 in QApplication::x11ProcessEvent () from /usr/lib/libQtGui.so.4
#26 0xb79a21f8 in QX11Info::copyX11Data () from /usr/lib/libQtGui.so.4
#27 0xb74feb51 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#28 0xb7501bc6 in g_main_context_check () from /usr/lib/libglib-2.0.so.0
#29 0xb7502147 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#30 0xb7692648 in QEventDispatcherGlib::processEvents ()
from /usr/lib/libQtCore.so.4
#31 0xb79a1fe5 in QX11Info::copyX11Data () from /usr/lib/libQtGui.so.4
#32 0xb766e231 in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#33 0xb766e33a in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#34 0xb76706f6 in QCoreApplication::exec () from /usr/lib/libQtCore.so.4
#35 0xb7924017 in QApplication::exec () from /usr/lib/libQtGui.so.4
#36 0x086e12c8 in lyx::frontend::GuiApplication::exec (this=0x8cf9f08)
at GuiApplication.cpp:158
#37 0x082deaa9 in lyx::LyX::exec (this=0xbf929c9c, [EMAIL PROTECTED],
argv=0xbf929d54) at LyX.cpp:463
#38 0x0806a1ae in main (argc=1, argv=Cannot access memory at address 0x3306
) at main.cpp:48
