Stefan Schimanski wrote:

void GuiWorkArea::processKeySym(KeySymbol const & key, KeyModifier mod)
{
    // In order to avoid bad surprise in the middle of an operation,
-    // we better stop the blinking cursor.
+    // we better stop the blinking cursor...
    stopBlinkingCursor();
+    // ...and the general timer.
+    stopGeneralTimer();

    theLyXFunc().setLyXView(lyx_view_);
    theLyXFunc().processKeySym(key, mod);
+ + // the cursor gets restarted in GuiView::restartCursor()
+    startGeneralTimer();
}


This very last call is a bad idea. LFUN can kill the workarea when you close the buffer via the keyboard. So we are inside of a method of an deallocated object.

Right. The best solution is I think to transfer the general timer to GuiView or GuiApplication.

Abdel.


Reply via email to