[vtkusers] Debugging a Segfault

Martin Baumann mailsgetlost at web.de
Wed Mar 29 08:47:02 EST 2006


Hi,

I have a segfault in an application that uses vtk.

strace writes:
...
read(7, "\1\215E\201\5\0\0\0\0\0\0\0^\23\0\0002\2d\0X\2&\2\1\0\0"..., 32) = 32
read(7, "\1\0\0\0", 4)                  = 4
read(7, "2\2d\0\212\4\212\2", 8)        = 8
read(7, "2\2d\0\212\4\212\2", 8)        = 8
ioctl(9, 0x4008642a, 0xbfffce00)        = 0
ioctl(9, 0x40186443, 0xbfffce10)        = 0
ioctl(9, 0xc0046444, 0xbfffcd94)        = 0
ioctl(9, 0x40046445, 0xbfffcd48)        = 0
ioctl(9, 0x40046445, 0xbfffce78)        = 0
write(7, "\217\5\4\0\0\0\0\0\0\0\0\0\0\0\0\0", 16) = 16
read(7, "\34\0E\201\2\0 \4K\1\0\0Y\262\270\0\1\246\256\10\2\0 \4"..., 32) = 32
read(7, "\34\365E\201\2\0 \4\367\0\0\0Y\262\270\0\0\0\0\0Y\262\270"..., 32) = 32
read(7, "\34\0E\201\2\0 \4w\1\0\0Y\262\270\0\1\0\0\0Y\262\270\0"..., 32) = 32
read(7, "\25\346E\201\2\0 \4\2\0 \4?\0\0\0\0\0\0\0\0\246\256\10"..., 32) = 32
read(7, "\34\0E\201\2\0 \4q\0\0\0Y\262\270\0\1\0\0\0Y\262\270\0"..., 32) = 32
read(7, "\34\365E\201?\0\0\0>\1\0\0Z\262\270\0\0\0\0\0\0\246\256"..., 32) = 32
read(7, "\34\365E\201?\0\0\0?\1\0\0Z\262\270\0\0\0\0\0Z\262\270"..., 32) = 32
read(7, 0xbfffcd40, 32)                 = -1 EAGAIN (Resource temporarily unavailable)
select(8, [7], NULL, NULL, NULL)        = 1 (in [7])
read(7, "\1\0F\201\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0008\366"..., 32) = 32
munmap(0x44e29000, 495616)              = 0
ioctl(9, 0x40086449, 0xbfffcd08)        = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++


Core file opened in Kdbg:
HvsStreamlineOptionWidget (this=0x82ce980, parent=0x408ce448, name=0x20f2 <Address 0x20f2 out of bounds>) at qstring.h:687
HvsPathlineActor (this=0x809dbf8, __vtt_parm=0xbfffe878) at hvs_pathline_actor.cc:66


The output of stracs and core file don't help me at all.


With the debugger I found out, that the segfault occurs during the following destructor:
HvsPipeline::~HvsPipeline()
{
  _line_widget->delete()
  _plane_widget->Delete();  // this is a vtkPlaneWidget, this causes the segfault
}

How can I find out what goes wrong?  What would be the best way?
As you see I am new to debugging :-(
Where can I find information on the reference counting system of vtk? I guess it hat something to do with this.

Thanks, M.B.
______________________________________________________________
Verschicken Sie romantische, coole und witzige Bilder per SMS!
Jetzt bei WEB.DE FreeMail: http://f.web.de/?mc=021193




More information about the vtkusers mailing list