By request, I have obtained the following backtraces from valgrind
(attached) and gdb from a LyX 1.2.0CVS of today with Juergens patch
applied compiled with --disable-optimization. They were both made doing
the same thing as in my prior backtraces.

Claus Hindsgaul

gdb:

(gdb) run
Starting program: /usr/local/bin/lyx

Program received signal SIGSEGV, Segmentation fault.
Row::par (this=0x18) at lyxrow.h:92
92              return par_;
(gdb) backtrace
#0  Row::par (this=0x18) at lyxrow.h:92
#1  0x08132c65 in LyXText::drawInset (this=0x83e0d58, p=@0xbffff000, pos=20) at 
text.C:495
#2  0x08133707 in LyXText::draw (this=0x83e0d58, p=@0xbffff000, vpos=@0xbfffefb8) at 
text.C:649
#3  0x08141fac in LyXText::paintRowText (this=0x83e0d58, p=@0xbffff000) at text.C:3665
#4  0x081421ed in LyXText::getVisibleRow (this=0x83e0d58, bv=0x83cb430, y_offset=56, 
x_offset=0, row=0x83e11d0, y=56,
    cleared=false) at text.C:3723
#5  0x0811c4bd in LyXScreen::drawFromTo (this=0x841b630, text=0x83e0d58, bv=0x83cb430, 
y1=0, y2=414, y_offset=0, x_offset=0,
    internal=true) at screen.C:130
#6  0x0811c33d in LyXScreen::redraw (this=0x841b630, text=0x83e0d58, bv=0x83cb430) at 
screen.C:92
#7  0x0805d77a in BufferView::Pimpl::workAreaExpose (this=0x83cb580) at 
BufferView_pimpl.C:1073
#8  0x0806b389 in SigC::ObjectSlot0_<void, BufferView::Pimpl>::callback (d=0x83cc2b4) 
at ../sigc++/object_slot.h:56
#9  0x08058823 in SigC::Callback0<void>::call (this=0x83cc2b4) at 
../../sigc++/slot.h:260
#10 0x0805890b in SigC::Signal0<void, SigC::Marshal<void> >::emit (this=0x83cb5ac) at 
../../sigc++/basic_signal.h:194
#11 0x080596b3 in SigC::Signal0<void, SigC::Marshal<void> >::operator() 
(this=0x83cb5ac) at ../../../sigc++/basic_signal.h:172
#12 0x080a15aa in WorkArea::work_area_handler (ob=0x83cc3e8, event=1, key=0, xev=0x0) 
at WorkArea.C:352
#13 0x080a05fe in C_WorkArea_work_area_handler (ob=0x83cc3e8, event=1, key=0, xev=0x0) 
at WorkArea.C:68
#14 0x400828f3 in fl_reset_focus_object () from /usr/X11R6/lib/libforms.so.0.89
#15 0x400829b5 in fl_handle_object () from /usr/X11R6/lib/libforms.so.0.89
#16 0x400822c8 in fl_find_last () from /usr/X11R6/lib/libforms.so.0.89
#17 0x4008241e in fl_redraw_form () from /usr/X11R6/lib/libforms.so.0.89
#18 0x40081a45 in fl_hide_object () from /usr/X11R6/lib/libforms.so.0.89
#19 0x080a1168 in {anonymous}::destroy_object (obj=0x83cb858) at WorkArea.C:239
#20 0x080a11b1 in WorkArea::createPixmap (this=0x83cb5ac, width=667, height=414) at 
WorkArea.C:253
#21 0x080a159b in WorkArea::work_area_handler (ob=0x83cc3e8, event=1, key=0, xev=0x0) 
at WorkArea.C:351
#22 0x080a05fe in C_WorkArea_work_area_handler (ob=0x83cc3e8, event=1, key=0, xev=0x0) 
at WorkArea.C:68
#23 0x400828f3 in fl_reset_focus_object () from /usr/X11R6/lib/libforms.so.0.89
#24 0x400829b5 in fl_handle_object () from /usr/X11R6/lib/libforms.so.0.89
#25 0x400822c8 in fl_find_last () from /usr/X11R6/lib/libforms.so.0.89
#26 0x400823cb in fl_redraw_object () from /usr/X11R6/lib/libforms.so.0.89
#27 0x080a2396 in WorkArea::redraw (this=0x83cb5ac) at WorkArea.h:53
#28 0x0805aea2 in BufferView::Pimpl::redraw (this=0x83cb580) at BufferView_pimpl.C:270
#29 0x0805b5d2 in BufferView::Pimpl::resizeCurrentBuffer (this=0x83cb580) at 
BufferView_pimpl.C:385
#30 0x0805ac15 in BufferView::Pimpl::buffer (this=0x83cb580, b=0x83e0ae0) at 
BufferView_pimpl.C:214
#31 0x08054006 in BufferView::buffer (this=0x83cb430, b=0x83e0ae0) at BufferView.C:64
#32 0x080f2cdf in LyXFunc::open (this=0x83b4b30, fname=@0xbffffa20) at lyxfunc.C:1905
#33 0x080efd03 in LyXFunc::dispatch (this=0x83b4b30, action=LFUN_FILE_OPEN, 
argument=0xbffffa20) at lyxfunc.C:1346
#34 0x080ed78a in LyXFunc::verboseDispatch (this=0x83b4b30, action=LFUN_FILE_OPEN, 
argument=@0xbffffa54, show_sc=true)
    at lyxfunc.C:803
#35 0x080ed734 in LyXFunc::verboseDispatch (this=0x83b4b30, ac=461, show_sc=true) at 
lyxfunc.C:795
#36 0x0824b083 in Menubar::Pimpl::MenuCallback (ob=0x83c5000, button=1) at 
Menubar_pimpl.C:586
#37 0x08248b96 in C_Menubar_Pimpl_MenuCallback (ob=0x83c5000, button=1) at 
Menubar_pimpl.C:80
#38 0x40047cb4 in fl_object_qread () from /usr/X11R6/lib/libforms.so.0.89
#39 0x40058679 in fl_check_forms () from /usr/X11R6/lib/libforms.so.0.89
#40 0x08247c7a in GUIRunTime::runTime () at GUIRunTime.C:94
#41 0x080e08ab in LyXGUI::runTime (this=0x835a4f8) at lyx_gui.C:292
#42 0x080e10b5 in LyX::LyX (this=0xbffffc0c, argc=0xbffffc34, argv=0xbffffc94) at 
../src/lyx_main.C:176
#43 0x0810d40e in main (argc=1, argv=0xbffffc94) at ../src/main.C:38
(gdb)
==18461== valgrind-20020424, a memory error detector for x86 GNU/Linux.
==18461== Copyright (C) 2000-2002, and GNU GPL'd, by Julian Seward.
==18461== Estimated CPU clock rate is 199 MHz
==18461== For more details, rerun with: -v
==18461== 
--18461-- Warning: splitting giant basic block into pieces
--18461-- Warning: splitting giant basic block into pieces
--18461-- Warning: splitting giant basic block into pieces
--18461-- Warning: splitting giant basic block into pieces
--18461-- Warning: splitting giant basic block into pieces
--18461-- Warning: splitting giant basic block into pieces
--18461-- Warning: splitting giant basic block into pieces
--18461-- Warning: splitting giant basic block into pieces
--18461-- Warning: splitting giant basic block into pieces
==18461== Syscall param write(buf) contains uninitialised or unaddressable byte(s)
==18461==    at 0x40624414: (within /lib/libc-2.2.5.so)
==18461==    by 0x4046AE83: (within /usr/X11R6/lib/libX11.so.6.2)
==18461==    by 0x4044F9DC: (within /usr/X11R6/lib/libX11.so.6.2)
==18461==    Address 0x4243C6D6 is 938 bytes inside a block of size 2048 alloc'd
==18461==    at 0x4003D43C: calloc (vg_clientfuncs.c:202)
==18461==    by 0x40443236: (within /usr/X11R6/lib/libX11.so.6.2)
==18461==    by 0x4031A009: (within /usr/X11R6/lib/libforms.so.0.89)
==18461== 
==18461== Syscall param writev(vector[...]) contains uninitialised or unaddressable 
byte(s)
==18461==    at 0x4062B2B7: (within /lib/libc-2.2.5.so)
==18461==    by 0x4046A3C3: (within /usr/X11R6/lib/libX11.so.6.2)
==18461==    by 0x4046AEDB: (within /usr/X11R6/lib/libX11.so.6.2)
==18461==    Address 0x4297EECA is 850 bytes inside a block of size 247080 alloc'd
==18461==    at 0x4003D018: malloc (vg_clientfuncs.c:96)
==18461==    by 0x40452AB5: (within /usr/X11R6/lib/libX11.so.6.2)
==18461==    by 0x4044706D: (within /usr/X11R6/lib/libX11.so.6.2)
convert: /usr/local/lib/valgrind/libpthread.so.0: no version information available 
(required by /usr/lib/libMagick.so.5)
convert: /usr/local/lib/valgrind/libpthread.so.0: no version information available 
(required by /usr/lib/libMagick.so.5)
==18461== 
==18461== Invalid read of size 4
==18461==    at 0x8104736: Row::previous(void) const (lyxrow.C:112)
==18461==    by 0x8132C4B: LyXText::drawInset(LyXText::DrawRowParams &, int) 
(text.C:494)
==18461==    by 0x8133707: LyXText::draw(LyXText::DrawRowParams &, int &) (text.C:649)
==18461==    by 0x8141FAC: LyXText::paintRowText(LyXText::DrawRowParams &) 
(text.C:3665)
==18461==    Address 0x42FA52B4 is 32 bytes inside a block of size 36 free'd
==18461==    at 0x4003D312: __builtin_delete (vg_clientfuncs.c:171)
==18461==    by 0x8143CB9: LyXText::removeRow(Row *) const (text2.C:376)
==18461==    by 0x8137C5F: LyXText::breakAgain(BufferView *, Row *) const (text.C:1653)
==18461==    by 0x814A2D5: LyXText::checkParagraph(BufferView *, Paragraph *, int) 
(text2.C:1956)
==18461== 
==18461== Invalid read of size 4
==18461==    at 0x8104746: ??? (lyxrow.h:92)
==18461==    by 0x8132C79: LyXText::drawInset(LyXText::DrawRowParams &, int) 
(text.C:495)
==18461==    by 0x8133707: LyXText::draw(LyXText::DrawRowParams &, int &) (text.C:649)
==18461==    by 0x8141FAC: LyXText::paintRowText(LyXText::DrawRowParams &) 
(text.C:3665)
==18461==    Address 0x42FA5294 is 0 bytes inside a block of size 36 free'd
==18461==    at 0x4003D312: __builtin_delete (vg_clientfuncs.c:171)
==18461==    by 0x8143CB9: LyXText::removeRow(Row *) const (text2.C:376)
==18461==    by 0x8137C5F: LyXText::breakAgain(BufferView *, Row *) const (text.C:1653)
==18461==    by 0x814A2D5: LyXText::checkParagraph(BufferView *, Paragraph *, int) 
(text2.C:1956)
pthread_mutex_lock-NOT-INSIDE-VALGRIND
pthread_mutex_lock-NOT-INSIDE-VALGRIND
pthread_mutex_unlock-NOT-INSIDE-VALGRIND
pthread_mutex_unlock-NOT-INSIDE-VALGRIND
pthread_mutex_lock-NOT-INSIDE-VALGRIND
pthread_mutex_unlock-NOT-INSIDE-VALGRIND
convert: relocation error: /usr/lib/libMagick.so.5: symbol open64, version GLIBC_2.2 
not defined in file libpthread.so.0 with link time reference
==18461== 
==18461== ERROR SUMMARY: 22 errors from 4 contexts (suppressed: 0 from 0)
==18461== malloc/free: in use at exit: 866014 bytes in 6402 blocks.
==18461== malloc/free: 35813 allocs, 29411 frees, 2100469 bytes allocated.
==18461== For a detailed leak analysis,  rerun with: --leak-check=yes
==18461== For counts of detected errors, rerun with: -v

Reply via email to