Package: mayavi2 Version: 2.1.1-2 Severity: important Hi!
As I commented on bug #478017, I don't see mayavi2 crashing at startup. On the other hand, I experience crashes after performing some operations. Please note that I've just upgraded mayavi2 from version 2.1.1-2 to version 2.1.1-2+b1, but I've seen the same issue on last Monday with version 2.1.1-2. I could reproduce this bug as follows. Let's take (again!) the test case I prepared for bug #400406 (see [1] and [2]). [1] http://bugs.debian.org/400406 [2] http://bugs.debian.org/cgi-bin/bugreport.cgi/vtk-multiblockPLOT3D-bug-test.tar.gz?bug=400406;msg=5;att=1 $ tar xvzf vtk-multiblockPLOT3D-bug-test.tar.gz $ ls gen_tinyplot3d.f tiny.q vtk-multiblockPLOT3D-bug-test.tar.gz list_plot3d.py tiny.xyz $ mayavi2 > ~/tmp/mayavi2.out 2> ~/tmp/mayavi2.err The main window shows up. * from menus, select File -> Load data -> PLOT3D file * as XYZ Co-ordinate file, select `tiny.xyz' * as Q Solution file, select `tiny.q' * select PLOT3D:tiny.xyz, tiny.q in the MayaVi pane * in the PLOT3DReader tab (inside the object editor), check "Binary file", "Do not reduce number of outputs", "Has byte count", and "Multi grid"; *un*check "Force read", "I blanking", and "Two dimensional geometry"; select "little_endian" Byte order * in the Reader tab, click on the "Update Reader" button OK, now we are ready to visualize the data... * from menus, select Visualize -> Modules -> Surface (a blue square shows up in the TVTK scene) * in the MayaVi pane, right-click on PLOT3D:tiny.xyz, tiny.q and choose copy from the context menu Boom! Segmentation fault! Relevant info in /var/log/kern.log: python[7379]: segfault at 2b7915ea1f40 rip 4b46cb rsp 7fffa3e3ccd0 error 7 File ~/tmp/mayavi2.out is empty: $ cat ~/tmp/mayavi2.out File ~/tmp/mayavi2.err includes just a (possibly irrelevant) message: $ cat ~/tmp/mayavi2.err (python:7379): Gtk-CRITICAL **: gtk_widget_set_colormap: assertion `!GTK_WIDGET_REALIZED (widget)' failed After this test, I said to myself: "OK, let's see if this bug is well reproducible". Hence, I started the above procedure over again. To my surprise, I repeated all the above steps and didn't get a segfault at the same point! When I chose copy from the context menu, the command was accepted. Then I added one more step: * in the MayaVi pane, right-click on TVTK Scene 1 in order to choose paste from the context menu Boom! Memory corruption! The following messages were spit out to the terminal (despite my stdout and stderr redirections...): *** glibc detected *** python: malloc(): memory corruption (fast): 0x00000000045 83360 *** ======= Backtrace: ========= /lib/libc.so.6[0x2adff47c701d] /lib/libc.so.6[0x2adff47c96c5] /lib/libc.so.6(__libc_malloc+0x90)[0x2adff47ca920] /usr/lib/libstdc++.so.6(_Znwm+0x1d)[0x2adff888bb7d] /usr/lib/libvtkCommon.so.5.0(_ZN24vtkSimpleCriticalSection3NewEv+0x18)[0x2ae002e b1248] /usr/lib/libvtkCommon.so.5.0(_ZN20vtkAbstractTransformC2Ev+0x51)[0x2ae002e9fdc1] /usr/lib/libvtkCommon.so.5.0(_ZN23vtkHomogeneousTransformC2Ev+0x16)[0x2ae002ee85 26] /usr/lib/libvtkCommon.so.5.0(_ZN25vtkTransformConcatenation11ConcatenateEPKd+0x1 01)[0x2ae002ea1e51] /usr/lib/libvtkRendering.so.5.0(_ZN8vtkActor9GetBoundsEv+0x352)[0x2ae0070f11a2] /usr/lib/libvtkRendering.so.5.0(_ZN24vtkFrustumCoverageCuller4CullEP11vtkRendere rPP7vtkPropRiS5_+0xca)[0x2ae00710a0ca] /usr/lib/libvtkRendering.so.5.0(_ZN11vtkRenderer12AllocateTimeEv+0x98)[0x2ae0071 6c318] /usr/lib/libvtkRendering.so.5.0(_ZN11vtkRenderer6RenderEv+0x235)[0x2ae00716c5e5] /usr/lib/libvtkRendering.so.5.0(_ZN21vtkRendererCollection6RenderEv+0x81)[0x2ae0 071721d1] /usr/lib/libvtkRendering.so.5.0(_ZN15vtkRenderWindow14DoStereoRenderEv+0x2e)[0x2 ae00715fc2e] /usr/lib/libvtkRendering.so.5.0(_ZN15vtkRenderWindow10DoFDRenderEv+0x34e)[0x2ae0 07161b6e] /usr/lib/libvtkRendering.so.5.0(_ZN15vtkRenderWindow10DoAARenderEv+0x464)[0x2ae0 071620d4] /usr/lib/libvtkRendering.so.5.0(_ZN15vtkRenderWindow6RenderEv+0x101)[0x2ae007160 f11] /usr/lib/libvtkRendering.so.5.0(_ZN22vtkXOpenGLRenderWindow6RenderEv+0x3e)[0x2ae 0071d571e] /usr/lib/libvtkRenderingPythonD.so.5.0[0x2ae006d6b059] python(PyEval_EvalFrameEx+0x661b)[0x48899b] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalCodeEx+0x776)[0x489756] python[0x4d3878] python(PyObject_Call+0x13)[0x417c73] python[0x41e47f] python(PyObject_Call+0x13)[0x417c73] python[0x41ea22] python(PyObject_Call+0x13)[0x417c73] /usr/lib/python2.5/site-packages/enthought/traits/ctraits.so[0x2adff64f22d6] python(PyObject_SetAttr+0xb8)[0x445ae8] python[0x47d73f] python(PyEval_EvalFrameEx+0x661b)[0x48899b] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalCodeEx+0x776)[0x489756] python(PyEval_EvalFrameEx+0x5045)[0x4873c5] python(PyEval_EvalCodeEx+0x776)[0x489756] python(PyEval_EvalFrameEx+0x5045)[0x4873c5] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalFrameEx+0x5bd7)[0x487f57] python(PyEval_EvalCodeEx+0x776)[0x489756] python[0x4d3878] python(PyObject_Call+0x13)[0x417c73] python[0x41e47f] ======= Memory map: ======== 00400000-0051b000 r-xp 00000000 fe:04 64717 /usr/bi n/python2.5 0071a000-0074c000 rw-p 0011a000 fe:04 64717 /usr/bi n/python2.5 0074c000-04609000 rw-p 0074c000 00:00 0 [heap] 2adff3c9a000-2adff3cb5000 r-xp 00000000 fe:01 59026 /lib/ld -2.7.so 2adff3cb5000-2adff3d3a000 rw-p 2adff3cb5000 00:00 0 2adff3d3a000-2adff3e74000 r--p 00000000 fe:04 955503 /usr/li b/locale/locale-archive 2adff3eb4000-2adff3eb6000 rw-p 0001a000 fe:01 59026 /lib/ld -2.7.so 2adff3eb6000-2adff3ecc000 r-xp 00000000 fe:01 59131 /lib/li bpthread-2.7.so 2adff3ecc000-2adff40cb000 ---p 00016000 fe:01 59131 /lib/li bpthread-2.7.so 2adff40cb000-2adff40cd000 rw-p 00015000 fe:01 59131 /lib/li bpthread-2.7.so 2adff40cd000-2adff40d1000 rw-p 2adff40cd000 00:00 0 2adff40d1000-2adff40d3000 r-xp 00000000 fe:01 59098 /lib/li bdl-2.7.so 2adff40d3000-2adff42d3000 ---p 00002000 fe:01 59098 /lib/li bdl-2.7.so 2adff42d3000-2adff42d5000 rw-p 00002000 fe:01 59098 /lib/li bdl-2.7.so 2adff42d5000-2adff42d7000 r-xp 00000000 fe:01 59142 /lib/li butil-2.7.so 2adff42d7000-2adff44d6000 ---p 00002000 fe:01 59142 /lib/li butil-2.7.so 2adff44d6000-2adff44d8000 rw-p 00001000 fe:01 59142 /lib/li butil-2.7.so 2adff44d8000-2adff44d9000 rw-p 2adff44d8000 00:00 0 2adff44d9000-2adff4557000 r-xp 00000000 fe:01 59114 /lib/li bm-2.7.so 2adff4557000-2adff4756000 ---p 0007e000 fe:01 59114 /lib/li bm-2.7.so 2adff4756000-2adff4758000 rw-p 0007d000 fe:01 59114 /lib/li bm-2.7.so 2adff4758000-2adff4896000 r-xp 00000000 fe:01 59079 /lib/li bc-2.7.so 2adff4896000-2adff4a96000 ---p 0013e000 fe:01 59079 /lib/li bc-2.7.so 2adff4a96000-2adff4a99000 r--p 0013e000 fe:01 59079 /lib/li bc-2.7.so 2adff4a99000-2adff4a9b000 rw-p 00141000 fe:01 59079 /lib/li bc-2.7.so 2adff4a9b000-2adff4aa2000 rw-p 2adff4a9b000 00:00 0 2adff4aa2000-2adff4aa6000 r-xp 00000000 fe:04 1068745 /usr/li b/python2.5/lib-dynload/time.so 2adff4aa6000-2adff4ca5000 ---p 00004000 fe:04 1068745 /usr/li b/python2.5/lib-dynload/time.so 2adff4ca5000-2adff4ca7000 rw-p 00003000 fe:04 1068745 /usr/li b/python2.5/lib-dynload/time.so 2adff4ca7000-2adff4cac000 r-xp 00000000 fe:04 1068743 /usr/li b/python2.5/lib-dynload/strop.so 2adff4cac000-2adff4eab000 ---p 00005000 fe:04 1068743 /usr/li b/python2.5/lib-dynload/strop.so 2adff4eab000-2adff4ead000 rw-p 00004000 fe:04 1068743 /usr/li b/python2.5/lib-dynload/strop.so 2adff4ead000-2adff4eb4000 r-xp 00000000 fe:04 1068741 /usr/li b/python2.5/lib-dynload/operator.so 2adff4eb4000-2adff50b4000 ---p 00007000 fe:04 1068741 /usr/li b/python2.5/lib-dynload/operator.so 2adff50b4000-2adff50b6000 rw-p 00007000 fe:04 1068741 /usr/li b/python2.5/lib-dynload/operator.so 2adff50b6000-2adff50ba000 r-xp 00000000 fe:04 1068734 /usr/li b/python2.5/lib-dynload/cStringIO.so 2adff50ba000-2adff52b9000 ---p 00004000 fe:04 1068734 /usr/li b/python2.5/lib-dynload/cStringIO.so 2adff52b9000-2adff52bb000 rw-p 00003000 fe:04 1068734 /usr/li b/python2.5/lib-dynload/cStringIO.so 2adff52bb000-2adff52c0000 r-xp 00000000 fe:04 1068755 /usr/li b/python2.5/lib-dynload/collections.so 2adff52c0000-2adff54c0000 ---p 00005000 fe:04 1068755 /usr/li b/python2.5/lib-dynload/collections.so 2adff54c0000-2adff54c2000 rw-p 00005000 fe:04 1068755 /usr/li b/python2.5/lib-dynload/collections.so 2adff54c2000-2adff54ce000 r-xp 00000000 fe:04 1068732 /usr/li b/python2.5/lib-dAborted The two files ~/tmp/mayavi2.out and ~/tmp/mayavi2.err were recreated as in the first test. I hope this bug can be fixed soon. -- System Information: Debian Release: lenny/sid APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 2.6.24-1-amd64 (SMP w/2 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Versions of packages mayavi2 depends on: ii libc6 2.7-10 GNU C Library: Shared libraries ii python 2.5.2-1 An interactive high-level object-o ii python-central 0.6.6 register and build utility for Pyt ii python-enthought-traits 2.0.4-2 Manifest typing and reactive progr ii python-enthought-traits-ui 2.0.4-2 User interface related modules for ii python-numpy 1:1.0.4-7 Numerical Python adds a fast array ii python-pkg-resources 0.6c8-3 Package Discovery and Resource Acc ii python-vtk 5.0.4-1+b1 Python bindings for VTK ii python-wxgtk2.6 2.6.3.2.2-2 wxWidgets Cross-platform C++ GUI t ii python2.5 2.5.2-3 An interactive high-level object-o mayavi2 recommends no packages. -- no debconf information -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

