Page MenuHomePhabricator | MITK

vtk rendering crashes when selecting twice a node of a .cnf connectomics network in Connectomics statistics view -> Balloon Info.
Open, NormalPublic

Description

Selecting one node of a connectomics network shows the balloon info on that node in 3D-View as expected,
then selecting a second node crashes the MitkDiffusion workbench application programme:

[Wed Jan 11 14:16:30 2017
1.152] Logfile: /home/mhettich/.local/share/DKFZ/MitkDiffusion_3162273065/data/9/mitk-0.log
[1.507] [BlueBerry] LOG: Warning: Detected recursive attempt by part org.mitk.views.connectomicsdata to create itself (this is probably, but not necessarily, a bug)
[1.509] **** Activating legacy standalone functionality
[1.509] setting active flag
[1.755] [BlueBerry] BlueBerry Workbench ready
QObject::connect: invalid null parameter
[3.629] Network read
[3.843] [widget.stdmulti] changing layout to big 3D ...

MitkDiffusion: /home/mhettich/MITKsuperbitch/ep/src/VTK/Common/Core/vtkDataArrayTemplate.h:191: T >vtkDataArrayTemplate<T>::GetValue(vtkIdType) [with T = unsigned char; vtkIdType = long long int]: Assertion `id >= 0 && id < this->Size' failed.

Abort (core dumped)
134

__

gbd bin/MitkDiffusion core
[...]
(gdb) p id
$2 = 42577792 //// _that_is_dec2hex(42577792)=0x289AF80

(gdb) p this->Size
$3 = 0 //// _of_course_this_assertion_fails: 0 <= id < 0 cannot be true. So why is this->Size = 0 (zero)?

(gdb) p this->Array[id]
$4 = 16 '\020'

(gdb) p typeid(this->Array[id])
$21 = {_vptr.type_info = 0x2b22a87d5290 <vtable for cxxabiv1::fundamental_type_info+16>, __name = 0x2b22a85a7f6d <typeinfo name for unsigned char> "h"}

(gdb) p typeid(id)
$19 = {_vptr.type_info = 0x2b22a87d5290 <vtable for cxxabiv1::fundamental_type_info+16>, __name = 0x2b22a85a7fac <typeinfo name for long long> "x"}

Event Timeline

hettich created this task.Jan 11 2017, 3:59 PM

Here the backtrace:

(gdb) bt f
#0  0x00002b22a8a2dc37 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
        resultvar = 0
        pid = 3168
        selftid = 3168
#1  0x00002b22a8a31028 in __GI_abort () at abort.c:89
        save_stage = 2
        act = {__sigaction_handler = {sa_handler = 0x7fffd5b0d179, sa_sigaction = 0x7fffd5b0d179}, sa_mask = {__val = {47427859462404, 
              47429051736984, 191, 4294967295, 47427858105683, 4294967296, 140736778505744, 61188928, 77347472, 0, 0, 0, 0, 21474836480, 
              47427840880640, 47427859477432}}, sa_flags = -272112668, 
          sa_restorer = 0x2b22efc7e5c0 <vtkDataArrayTemplate<unsigned char>::GetValue(long long)::__PRETTY_FUNCTION__>}
        sigs = {__val = {32, 0 <repeats 15 times>}}
#2  0x00002b22a8a26bf6 in __assert_fail_base (fmt=0x2b22a8b773b8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", 
    assertion=assertion@entry=0x2b22efc7e3e4 "id >= 0 && id < this->Size", 
    file=file@entry=0x2b22efc7e398 "/home/mhettich/MITKsuperbitch/ep/src/VTK/Common/Core/vtkDataArrayTemplate.h", line=line@entry=191, 
    function=function@entry=0x2b22efc7e5c0 <vtkDataArrayTemplate<unsigned char>::GetValue(long long)::__PRETTY_FUNCTION__> "T vtkDataArrayTemplate<T>::GetValue(vtkIdType) [with T = unsigned char; vtkIdType = long long int]") at assert.c:92
        str = 0x4b4a3d0 ""
        total = 4096
#3  0x00002b22a8a26ca2 in __GI___assert_fail (assertion=0x2b22efc7e3e4 "id >= 0 && id < this->Size", 
    file=0x2b22efc7e398 "/home/mhettich/MITKsuperbitch/ep/src/VTK/Common/Core/vtkDataArrayTemplate.h", line=191, 
    function=0x2b22efc7e5c0 <vtkDataArrayTemplate<unsigned char>::GetValue(long long)::__PRETTY_FUNCTION__> "T vtkDataArrayTemplate<T>::GetValue(vtkIdType) [with T = unsigned char; vtkIdType = long long int]") at assert.c:101
No locals.
#4  0x00002b22efc28174 in vtkDataArrayTemplate<unsigned char>::GetValue (this=0x490fc60, id=42577792)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Common/Core/vtkDataArrayTemplate.h:191
        __PRETTY_FUNCTION__ = "T vtkDataArrayTemplate<T>::GetValue(vtkIdType) [with T = unsigned char; vtkIdType = long long int]"
#5  0x00002b22eb0baceb in vtkCellTypes::GetCellType (this=0x49c3a90, cellId=42577792)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Common/DataModel/vtkCellTypes.h:88
No locals.
#6  0x00002b22eb0bae37 in vtkPolyData::GetCellPoints (this=0x3a5ab40, cellId=42577792, npts=@0x7fffd5b09010: 42577792, 
    pts=@0x7fffd5b09008: 0x2b22fa395a34 <vtkBorderRepresentation::RenderOpaqueGeometry(vtkViewport*)+142>)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Common/DataModel/vtkPolyData.h:607
        type = 0 '\000'
        cells = 0x3a5ab40
        loc = 0
#7  0x00002b22eecebba6 in vtkPolyData::GetCellPoints (this=0x3a5ab40, cellId=42577792, ptIds=0x3a5ab40)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Common/DataModel/vtkPolyData.cxx:1090
        i = 42952384
        pts = 0x2b22fa395a34 <vtkBorderRepresentation::RenderOpaqueGeometry(vtkViewport*)+142>
        npts = 42577792
#8  0x00002b22ec70532a in vtkRenderer::UpdateGeometry (this=0x289af80)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/Core/vtkRenderer.cxx:574
        i = 4
        hasTranslucentPolygonalGeometry = 11042
#9  0x00002b22ebc46579 in vtkOpenGLRenderer::DeviceRender (this=0x289af80)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/OpenGL/vtkOpenGLRenderer.cxx:270
        mvDepth = -1072996379
#10 0x00002b22ec7046d2 in vtkRenderer::Render (this=0x289af80) at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/Core/vtkRenderer.cxx:311
        t2 = 2.1024943796148413e-316
        i = 1
        pit = 0x0
        t1 = 1484140704.239686
        aProp = 0x0
        size = 0x2895410
#11 0x00002b22ec702cbd in vtkRendererCollection::Render (this=0x2895650)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/Core/vtkRendererCollection.cxx:51
        ren = 0x289af80
        i = 0
        rsit = 0x0
        firstRen = 0x289af80
        renWin = 0x2895390
        numLayers = 1
#12 0x00002b22ec719529 in vtkRenderWindow::DoStereoRender (this=0x2895390)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/Core/vtkRenderWindow.cxx:772
        aren = 0x0
        rsit = 0x0
#13 0x00002b22ec719435 in vtkRenderWindow::DoFDRender (this=0x2895390)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/Core/vtkRenderWindow.cxx:741
        i = 76056872
#14 0x00002b22ec718db8 in vtkRenderWindow::DoAARender (this=0x2895390)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/Core/vtkRenderWindow.cxx:620
        i = 0
#15 0x00002b22ec718309 in vtkRenderWindow::Render (this=0x2895390)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/Core/vtkRenderWindow.cxx:436
        size = 0x2895410
        x = 32767
        y = -1429512513
        p1 = 0xc491801
#16 0x00002b22ebcff98b in vtkXOpenGLRenderWindow::Render (this=0x2895390)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/OpenGL/vtkXOpenGLRenderWindow.cxx:1839
        attribs = {x = 0, y = 0, width = 857, height = 1012, border_width = 0, depth = 24, visual = 0x3ee4fe0, root = 661, c_class = 1, 
          bit_gravity = 0, win_gravity = 1, backing_store = 0, backing_planes = 4294967295, backing_pixel = 0, save_under = 0, 
          colormap = 75497570, map_installed = 0, map_state = 2, all_event_masks = 6987903, your_event_mask = 0, do_not_propagate_mask = 0, 
          override_redirect = 0, screen = 0x28a9b80}
#17 0x00002b22e8eac1e4 in mitk::RenderingManager::ForceImmediateUpdate (this=0x25e3660, renderWindow=0x2895390)
    at /home/mhettich/MITK/Modules/Core/src/Controllers/mitkRenderingManager.cpp:247
        vPR = <optimized out>
        size = <optimized out>
#18 0x00002b22ffca6b9a in QmitkStdMultiWidget::ForceImmediateUpdate (this=0x2610c60)
    at /home/mhettich/MITK/Modules/QtWidgets/src/QmitkStdMultiWidget.cpp:1411
No locals.
#19 0x00002b230bd947fe in QmitkConnectomicsStatisticsView::OnNetworkBalloonsNodeLabelsComboBoxCurrentIndexChanged (this=0x29d0730)
    at /home/mhettich/MITK/Plugins/org.mitk.gui.qt.diffusionimaging/src/internal/Connectomics/QmitkConnectomicsStatisticsView.cpp:127
        tempCurrentText = "14"
        balloonTextStream = <incomplete type>
        network = <optimized out>
        nodes = std::vector of length 1, capacity 1 = {0x48120f0}
        node = {m_Pointer = 0x48120f0}
#20 0x00002b230bfb0791 in QmitkConnectomicsStatisticsView::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, 
    _a=<optimized out>)
    at /home/mhettich/MITKsuperbitch/MITK-build/Plugins/org.mitk.gui.qt.diffusionimaging/src/internal/Connectomics/moc_QmitkConnectomicsStatisticsView.cpp:71
        _t = <optimized out>
#21 0x00002b22a80509af in QMetaObject::activate(QObject*, int, int, void**) () from /opt/Qt/5.6/gcc_64/lib/libQt5Core.so.5
No symbol table info available.
#22 0x00002b22a92f07b1 in QComboBox::currentIndexChanged(int) () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#23 0x00002b22a92f1c51 in ?? () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#24 0x00002b22a92f419d in ?? () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#25 0x00002b22a92f42f6 in ?? () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#26 0x00002b22a92fa40d in ?? () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#27 0x00002b22a80509af in QMetaObject::activate(QObject*, int, int, void**) () from /opt/Qt/5.6/gcc_64/lib/libQt5Core.so.5
No symbol table info available.
#28 0x00002b22a92f0d6b in ?? () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#29 0x00002b22a80278f3 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) ()
   from /opt/Qt/5.6/gcc_64/lib/libQt5Core.so.5
No symbol table info available.
#30 0x00002b22a91e0b75 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#31 0x00002b22a91e5820 in QApplication::notify(QObject*, QEvent*) () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#32 0x00002b22a7baf112 in QmitkSafeNotify<QtSingleApplication> (app=<optimized out>, receiver=<optimized out>, event=<optimized out>)
    at /home/mhettich/MITK/Modules/AppUtil/src/QmitkSafeNotify.h:31
        __FUNCTION__ = "QmitkSafeNotify"
        msg = {static null = {<No data fields>}, d = 0x2b22a810afa0 <QArrayData::shared_null>}
        msgBox = <incomplete type>
        ret = <optimized out>
#33 0x00002b22a7baf03e in QmitkSingleApplication::notify (this=<optimized out>, receiver=<optimized out>, event=<optimized out>)
    at /home/mhettich/MITK/Modules/AppUtil/src/QmitkSingleApplication.cpp:33
No locals.
#34 0x00002b22a8027b80 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /opt/Qt/5.6/gcc_64/lib/libQt5Core.so.5
No symbol table info available.
#35 0x00002b22a91e449f in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool)
    () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#36 0x00002b22a923fa6b in ?? () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#37 0x00002b22a9241aa3 in ?? () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#38 0x00002b22a91e0b9c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
[...]
#66 0x000000000040137e in main (argc=<optimized out>, argv=<optimized out>) at /home/mhettich/MITK/Applications/Diffusion/MitkDiffusion.cpp:64
        app = {<Poco::Util::Application> = {<Poco::Util::Subsystem> = {<Poco::RefCountedObject> = {
                _vptr.RefCountedObject = 0x2b22a7db8610 <vtable for mitk::BaseApplication+16>, _counter = {_counter = 1}}, <No data fields>}, 
            _pConfig = {_ptr = 0x163ec20}, _subsystems = std::vector of length 1, capacity 1 = {{_ptr = 0x163f470}}, _initialized = true, 
            _command = "bin/MitkDiffusion", _argv = std::vector of length 1, capacity 1 = {"bin/MitkDiffusion"}, 
            _unprocessedArgs = std::vector of length 0, capacity 1, _options = {_options = std::vector of length 18, capacity 32 = {{
                  _shortName = "h", _fullName = "help", _description = "print this help text", _required = false, _repeatable = false, 
[...]

not complete yet: T22342-fix_vtk_rendering_crash_in_connectomics_balloon_help.

hettich added a comment.EditedJan 13 2017, 7:51 PM

crashes in different ways or at different points within the vtk rendering chain, but always after repeating this user action, and not on the first time.