Hello Juergen,

It seems that setting a message triggers a draw of the working area with 4.4. So, as it is not safe to do anything inside the paint event that triggers another paint event, this patch fixes the crash.

OK to apply?

Abdel.
Index: src/frontends/qt4/GuiWorkArea.cpp
===================================================================
--- src/frontends/qt4/GuiWorkArea.cpp   (revision 24321)
+++ src/frontends/qt4/GuiWorkArea.cpp   (working copy)
@@ -307,7 +307,7 @@
        // Repaint the whole screen.
        // Note: this is different from redraw() as only the backing pixmap
        // will be redrawn, which is cheap.
-       viewport()->repaint();
+       viewport()->update();
 
        // FIXME: it would be better to send a signal "newBuffer()"
        // in BufferList that could be connected to the different tabbars.
@@ -590,7 +590,6 @@
                return;
        }
 
-       verticalScrollBar()->show();
        paintText(*buffer_view_, pain);
 }
 
Index: src/frontends/WorkArea.cpp
===================================================================
--- src/frontends/WorkArea.cpp  (revision 24321)
+++ src/frontends/WorkArea.cpp  (working copy)
@@ -243,12 +243,7 @@
 
 void WorkArea::resizeBufferView()
 {
-       lyx_view_.busy(true);
-       lyx_view_.message(_("Formatting document..."));
        buffer_view_->workAreaResize(width(), height());
-       lyx_view_.updateLayoutChoice();
-       lyx_view_.clearMessage();
-       lyx_view_.busy(false);
 }
 
 

Reply via email to