On Wed, Dec 18, 2024 at 02:08:13PM +0100, Jean-Marc Lasgouttes wrote: > > Thanks for the backtrace. So is it only a thing in branch? Note that the > > assertion in ParagraphMetrics::position() is new, so this might be an > > old problem that we detect only now. > > The patch below should fix the symptom, and I think there is no other cause > to cure. I am not sure, though, since I do not understand this > beforeDisplayPosX stuff.
I can reproduce the crash with the current master. The good news: I have recipe for reproducing in almost 100% of cases on one machine now. The bad news: the patch does not solve the crash. The backtrace looks different with my 100% case: file=file@entry=0x5555560bbe99 "lassert.cpp", line=line@entry=45) at boost.cpp:47 #6 0x0000555555ffed6f in lyx::doAssertWithCallstack (value=value@entry=false) at lassert.cpp:45 #7 0x0000555555ffee30 in lyx::doAssert (expr=expr@entry=0x5555560409a8 "hasPosition()", file=file@entry=0x555556040993 "ParagraphMetrics.cpp", line=line@entry=71) at lassert.cpp:54 #8 0x00005555559ded7d in lyx::ParagraphMetrics::position (this=0x555557274a08) at ParagraphMetrics.cpp:71 #9 0x0000555555a8d414 in lyx::BufferView::getPos (this=this@entry=0x555557028a50, dit=...) at BufferView.cpp:3475 #10 0x0000555555a8d60a in lyx::BufferView::caretPosAndDim (this=this@entry=0x555557028a50, p=..., dim=...) at BufferView.cpp:3507 #11 0x0000555555a8dd8a in lyx::BufferView::caretInView (this=0x555557028a50) at BufferView.cpp:3601 #12 0x0000555555d982d4 in lyx::frontend::GuiWorkArea::Private::updateCaretGeometry (this=0x555556e7ebc0) at GuiWorkArea.cpp:507 #13 0x0000555555d9fd55 in lyx::frontend::GuiWorkArea::paintEvent (this=0x555556fabca0, ev=0x7fffffffd960) at GuiWorkArea.cpp:1519 My current recipy is to load a file, jump to one specific page where pdf images are being loaded. The caret is at the very bottom of workarea and it seems that when the image is about to getting displayed (that would push the caret under the visible window) the assertion occurs. If there is any debuging output I can deliver, please let me know. Pavel -- lyx-devel mailing list lyx-devel@lists.lyx.org https://lists.lyx.org/mailman/listinfo/lyx-devel