Re: breakinsets3 branch: assertion
Scott Kostyshak <[email protected]>
| Newsgroups | gmane.editors.lyx.devel |
|---|---|
| Message-ID | <acmC9TP7fKtpNuG3@jimmy> |
On Sun, Mar 29, 2026 at 08:59:16PM +0200, Scott Kostyshak wrote: > On Sun, Mar 29, 2026 at 06:45:55PM +0200, Jean-Marc Lasgouttes via lyx-devel wrote: > > Le 29/03/2026 à 16:08, Scott Kostyshak a écrit : > > > It was when highighting (with mouse) while scrolling Tutorial.lyx. Here was the assertion: > > > > > > support/lassert.cpp (57): ASSERTION hasPosition() VIOLATED IN /home/scott/lyxbuilds/master-master/repo/src/ParagraphMetrics.cpp:61 > > > > > > I could not reproduce a second time though. > > > > Thanks for testing. I am currently trying to make the selection visible. > > Next will be proper decoration of the insets (with a difficulty for showing > > the inset name below the inset frame). > > > > There is also a difficulty with bidi text. I have worked on it, but I > > believe now that some logic needs to be reworked. > > > > It would be great if you could reproduce the assertion. > > Backtrace attached. Does it help? I also got a SIGSEGV when testing on one of my own documents. Backtrace attached. Scott -- lyx-devel mailing list [email protected] https://lists.lyx.org/mailman/listinfo/lyx-devel
bt-sigsegv.txt
(text/plain, 6.4 KB)
Thread 1 "lyx" received signal SIGSEGV, Segmentation fault.
0x00005555556c84e6 in std::char_traits<wchar_t>::assign (__c1=<error reading variable: Cannot access memory at address 0x55500d122988>, __c2=@0x7fffffff878c: 0 L'\000')
at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/char_traits.h:494
494 __c1 = __c2;
(gdb) bt
#0 0x00005555556c84e6 in std::char_traits<wchar_t>::assign (__c1=<error reading variable: Cannot access memory at address 0x55500d122988>, __c2=@0x7fffffff878c: 0 L'\000')
at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/char_traits.h:494
#1 0x00005555556c8a58 in std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_M_set_length (this=0x5555584780b8, __n=0)
at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/basic_string.h:267
#2 0x00005555556cbae9 in std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::clear (this=0x5555584780b8)
at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/basic_string.h:1250
#3 0x00005555556cbaaf in std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::operator= (this=0x5555584781c0, __str=...)
at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/basic_string.h:930
#4 0x00005555559a7d1b in lyx::Row::Element::operator= (this=0x555558478160) at /home/scott/lyxbuilds/master-master/repo/src/Row.h:117
#5 0x00005555559a9891 in std::__assign_one<true, lyx::Row::Element*, lyx::Row::Element*> (__out=@0x7fffffff88a8: 0x555558478160, __in=@0x7fffffff88b8: 0x555558478058)
at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_algobase.h:404
#6 std::__copy_move_a2<true, lyx::Row::Element*, lyx::Row::Element*, lyx::Row::Element*> (__first=0x555558478058, __last=0x555558478160, __result=0x555558478160)
at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_algobase.h:462
#7 0x00005555559a9789 in std::__copy_move_a1<true, lyx::Row::Element*, lyx::Row::Element*> (__first=0x555558477a28, __last=0x555558478160, __result=0x555558477b30)
at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_algobase.h:492
#8 std::__copy_move_a<true, __gnu_cxx::__normal_iterator<lyx::Row::Element*, std::vector<lyx::Row::Element, std::allocator<lyx::Row::Element> > >, __gnu_cxx::__normal_iterator<lyx::Row::Element*, std::vector<lyx::Row::Element, std::allocator<lyx::Row::Element> > > > (__first=..., __last=..., __result=...)
at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_algobase.h:501
#9 std::move<__gnu_cxx::__normal_iterator<lyx::Row::Element*, std::vector<lyx::Row::Element, std::allocator<lyx::Row::Element> > >, __gnu_cxx::__normal_iterator<lyx::Row::Element*, std::vector<lyx::Row::Element, std::allocator<lyx::Row::Element> > > > (__first=..., __last=..., __result=...) at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_algobase.h:674
#10 0x00005555559a95c6 in std::vector<lyx::Row::Element, std::allocator<lyx::Row::Element> >::_M_erase (this=0x555558190cf0, __first=..., __last=...)
at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/vector.tcc:201
#11 0x00005555559a82fd in std::vector<lyx::Row::Element, std::allocator<lyx::Row::Element> >::erase (this=0x555558190cf0, __first=..., __last=...)
at /usr/lib/gcc/x86_64-linux-gnu/15/../../../../include/c++/15/bits/stl_vector.h:1824
#12 0x0000555555a2d849 in lyx::Row::erase (this=0x555558190cc0, first=..., last=...) at /home/scott/lyxbuilds/master-master/repo/src/Row.h:377
#13 0x0000555555a2599e in lyx::(anonymous namespace)::CollectInfo::collectInsetRow (this=0x55555826d260, row=..., itend=...)
at /home/scott/lyxbuilds/master-master/repo/src/TextMetrics.cpp:580
#14 0x0000555555a22a4a in lyx::TextMetrics::collectInsetRows (this=0x7fffe80024d8, rows=std::vector of length 1, capacity 1 = {...}, bv=...)
at /home/scott/lyxbuilds/master-master/repo/src/TextMetrics.cpp:661
#15 0x0000555555a1e89b in lyx::TextMetrics::redoParagraph (this=0x7fffe80024d8, pit=97) at /home/scott/lyxbuilds/master-master/repo/src/TextMetrics.cpp:720
#16 0x0000555555a1f0be in lyx::TextMetrics::updateMetrics (this=0x7fffe80024d8, anchor_pit=90, anchor_ypos=-49, bv_height=896)
at /home/scott/lyxbuilds/master-master/repo/src/TextMetrics.cpp:270
#17 0x00005555557ce884 in lyx::BufferView::updateMetrics (this=0x555557035ea0, force=true) at /home/scott/lyxbuilds/master-master/repo/src/BufferView.cpp:3423
#18 0x00005555557e181e in lyx::BufferView::resize (this=0x555557035ea0, width=1902, height=896) at /home/scott/lyxbuilds/master-master/repo/src/BufferView.cpp:2771
#19 0x0000555555e88eec in lyx::frontend::GuiWorkArea::resizeBufferView (this=0x555557f9b240) at /home/scott/lyxbuilds/master-master/repo/src/frontends/qt/GuiWorkArea.cpp:501
#20 0x0000555555e8c87e in lyx::frontend::GuiWorkArea::paintEvent (this=0x555557f9b240, ev=0x7fffffff9d40) at /home/scott/lyxbuilds/master-master/repo/src/frontends/qt/GuiWorkArea.cpp:1335
#21 0x00007ffff77f26c5 in QWidget::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt6Widgets.so.6
#22 0x00007ffff789cfca in QFrame::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt6Widgets.so.6
#23 0x00007ffff657e0e8 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt6Core.so.6
#24 0x00007ffff77980b8 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt6Widgets.so.6
#25 0x0000555555dfc211 in lyx::frontend::GuiApplication::notify (this=0x5555566a1a70, receiver=0x555557f9b0f0, event=0x7fffffff9d40)
at /home/scott/lyxbuilds/master-master/repo/src/frontends/qt/GuiApplication.cpp:3041
#26 0x00007ffff65813f0 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt6Core.so.6
#27 0x00007ffff77e1d04 in QWidgetPrivate::sendPaintEvent(QRegion const&) () at /lib/x86_64-linux-gnu/libQt6Widgets.so.6
#28 0x00007ffff77e438d in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
at /lib/x86_64-linux-gnu/libQt6Widgets.so.6
#29 0x00007ffff77e6e24 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt6Widgets.so.6
signature.asc
(application/pgp-signature, 488 B)
-----BEGIN PGP SIGNATURE----- iQEzBAEBCgAdFiEEMfkICpsJzYuNuGlOA4ZnarZHC+sFAmnJgxgACgkQA4ZnarZH C+upxAf+MiHZW307yd98Venmio3ipxhcI80et+dA1WroSAd/UoBiaj8XTbWwflRQ 0ptiWYDLdEIwQo2DfItxReEad9EeT+eYlVI2UI8GJtSPUJg2C8+w+G3yx7kNXxbn DEX+UBUaF2D3ojy6bkyq+oF96BaIMN89bHBy0YtLYXGVr0ml4Uj/q+f0uk5Tn+7P FytWXs9B4o9rr+5Xo0TkR0JhYCjxUBCrBa6ETR52gOufRP7hwkn4YWhChRe0VaNh +5kuIgoWN6N6w/wwuLEm/gNNcZi9AhqkNj7s3s5w2JBrR0QmMBEsHzk5GOz6gOOT BHgz+SVm7ASYLQf/INPxImLCVeetMg== =XfjM -----END PGP SIGNATURE-----