Abdelrazak Younes wrote:
Asger Ottar Alstrup wrote:
Lars Gullik Bjønnes wrote:
Abdelrazak Younes <[EMAIL PROTECTED]> writes:
| Index: GuiWorkArea.C
| ===================================================================
| --- GuiWorkArea.C (revision 15390)
| +++ GuiWorkArea.C (working copy)
| @@ -426,7 +426,7 @@
| | void GuiWorkArea::update(int x, int y, int w, int h)
| {
| - viewport()->update(x, y, w, h);
| + viewport()->repaint(x, y, w, h);
| }
We'll test this patch and report back.
Doesn't help. To reproduce:
Open user guide, press ctrl+end, then ctrl+home.
Yes, I see it with a build of yesterday. But I don't see it with a build
from the 17th. I don't remember changing anything in WorkArea,
GuiWorkArea or BufferView during those tree days. Someday else might...
please investigate the log files for these 3 files and the three last
days...
Correction... could be my fault!
More precisely this patch form revision 15375, please uncomment the line
and see if it solves the problem.
If yes, then we will really have to do something about tabular!
Abdel.
Author: younes
Date: Thu Oct 19 18:02:12 2006
New Revision: 15375
URL: http://www.lyx.org/trac/changeset/15375
Log:
Hopefully temporary fix for the Tabular crash problem. Of course, this
is not the right fix but I spend hours debugging through this code
without success. So unless someone knows that code better...
* BufferView::updateMetrics(): add a big FIXME and don't clear out the
coord_cache_.
Modified:
lyx-devel/trunk/src/BufferView.C
Modified: lyx-devel/trunk/src/BufferView.C
URL: http://www.lyx.org/trac/file/lyx-devel/trunk/src/BufferView.C?rev=15375
==============================================================================
--- lyx-devel/trunk/src/BufferView.C (original)
+++ lyx-devel/trunk/src/BufferView.C Thu Oct 19 18:02:12 2006
@@ -1261,8 +1261,15 @@
void BufferView::updateMetrics(bool singlepar)
{
+ // FIXME (Abdel 19/10/2006):
+ // There's something fishy in tabular. The coord_cache_ is not
+ // correctly reconstructed when a character is trying to be inserted.
+ // Not clearing out the coord_cache_ fixes the crash but I don't know
+ // what side effect this could have on other insets.
+ //
// Remove old position cache
- coord_cache_.clear();
+ // coord_cache_.clear();
+
LyXText & buftext = buffer_->text();
lyx::pit_type size = int(buftext.paragraphs().size());
Abdel.