Page MenuHomePhabricator

Segmentation view crash
Closed, InvalidPublic

Description

My ExtApp based application crashed. I ran it with valgrind, the output is below.

I created a segmentation, then I added a region. The contours were still green when I wanted to switch to another view, so I clicked on the little dropdown button on the toolbar. At that time the application window disappeared.

I use an MITK snapshot from Feb 7, its hash is:
9453c80968578bf62ab98c4c43a9ea065563a5ed

22949== Invalid read of size 1

22949== at 0x2F4A68EC: QmitkSlicesInterpolator::OnSurfaceInterpolationInfoChanged(itk::EventObject const&) (QmitkSlicesInterpolator.cpp:945)

22949== by 0x2F4B463F: itk::ReceptorMemberCommand<QmitkSlicesInterpolator>::Execute(itk::Object const*, itk::EventObject const&) (itkCommand.h:195)

22949== by 0x1ABCE70B: itk::SubjectImplementation::InvokeEvent(itk::EventObject const&, itk::Object const*) (itkObject.cxx:160)

22949== by 0x1ABCF3C7: itk::Object::InvokeEvent(itk::EventObject const&) const (itkObject.cxx:461)

22949== by 0x1ABCEBA3: itk::Object::Modified() const (itkObject.cxx:300)

22949== by 0x2EA33D8D: mitk::SurfaceInterpolationController::AddNewContour(itk::SmartPointer<mitk::Surface>, mitk::RestorePlanePositionOperation*) (mitkSurfaceInterpolationController.cpp:110)

22949== by 0x2EB4FB83: mitk::SegTool2D::WriteBackSegmentationResult(mitk::PositionEvent const*, mitk::Image*) (mitkSegTool2D.cpp:306)

22949== by 0x2EB3E19B: mitk::ContourTool::OnMouseReleased(mitk::Action*, mitk::StateEvent const*) (mitkContourTool.cpp:129)

22949== by 0x2EB51BEA: mitk::TSpecificStateMachineFunctor<mitk::SegTool2D>::DoAction(mitk::Action*, mitk::StateEvent const*) (mitkStateMachine.h:62)

22949== by 0x19C671A7: mitk::StateMachine::ExecuteAction(mitk::Action*, mitk::StateEvent const*) (mitkStateMachine.cpp:197)

22949== by 0x19C66F4D: mitk::StateMachine::HandleEvent(mitk::StateEvent const*) (mitkStateMachine.cpp:168)

22949== by 0x19C4DBC3: mitk::GlobalInteraction::InformListeners(mitk::StateEvent const*) (mitkGlobalInteraction.cpp:184)

22949== Address 0x4afe07e1 is 49 bytes inside a block of size 93 free'd

22949== at 0x4C27FF2: operator delete(void*) (vg_replace_malloc.c:387)

22949== by 0x6A1A1E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.16)

22949== by 0x1ABD1BB8: itk::ObjectFactoryBase::CreateObject(char const*) (itkObjectFactoryBase.cxx:559)

22949== by 0x1ABD0922: itk::ObjectFactoryBase::CreateInstance(char const*) (itkObjectFactoryBase.cxx:120)

22949== by 0x19B4CCC1: itk::ObjectFactory<itk::BoundingBox<unsigned long, 3, float, itk::VectorContainer<unsigned long, itk::Point<float, 3u> > > >::Create() (itkObjectFactory.h:52)

22949== by 0x19B4C755: itk::BoundingBox<unsigned long, 3, float, itk::VectorContainer<unsigned long, itk::Point<float, 3u> > >::New() (in /home/espakm/src/MITK-debug/MITK-build/bin/libMitk.so)

22949== by 0x19B4C35B: itk::AffineGeometryFrame<float, 3u>::SetBoundsArray(itk::FixedArray<float, 6u> const&, itk::SmartPointer<itk::BoundingBox<unsigned long, 3, float, itk::VectorContainer<unsigned long, itk::Point<float, 3u> > > >&) (itkAffineGeometryFrame.txx:80)

22949== by 0x19B7D8F1: mitk::Geometry3D::SetFloatBounds(float const*) (mitkGeometry3D.cpp:147)

22949== by 0x19B7D43D: mitk::Geometry3D::Initialize() (mitkGeometry3D.cpp:91)

22949== by 0x19C2163F: mitk::TimeSlicedGeometry::InitializeEmpty(unsigned int) (mitkTimeSlicedGeometry.cpp:258)

22949== by 0x19C213FB: mitk::TimeSlicedGeometry::InitializeEvenlyTimed(mitk::Geometry3D*, unsigned int) (mitkTimeSlicedGeometry.cpp:235)

22949== by 0x19B5380E: mitk::BaseData::SetGeometry(mitk::Geometry3D*) (mitkBaseData.cpp:115)

22949

22949== Invalid read of size 8

22949== at 0x5EB5194: QFutureWatcherBase::isRunning() const (in /usr/lib/x86_64-linux-gnu/libQtCore.so.4.7.4)

22949== by 0x2F4A690C: QmitkSlicesInterpolator::OnSurfaceInterpolationInfoChanged(itk::EventObject const&) (QmitkSlicesInterpolator.cpp:947)

22949== by 0x2F4B463F: itk::ReceptorMemberCommand<QmitkSlicesInterpolator>::Execute(itk::Object const*, itk::EventObject const&) (itkCommand.h:195)

22949== by 0x1ABCE70B: itk::SubjectImplementation::InvokeEvent(itk::EventObject const&, itk::Object const*) (itkObject.cxx:160)

22949== by 0x1ABCF3C7: itk::Object::InvokeEvent(itk::EventObject const&) const (itkObject.cxx:461)

22949== by 0x1ABCEBA3: itk::Object::Modified() const (itkObject.cxx:300)

22949== by 0x2EA33D8D: mitk::SurfaceInterpolationController::AddNewContour(itk::SmartPointer<mitk::Surface>, mitk::RestorePlanePositionOperation*) (mitkSurfaceInterpolationController.cpp:110)

22949== by 0x2EB4FB83: mitk::SegTool2D::WriteBackSegmentationResult(mitk::PositionEvent const*, mitk::Image*) (mitkSegTool2D.cpp:306)

22949== by 0x2EB3E19B: mitk::ContourTool::OnMouseReleased(mitk::Action*, mitk::StateEvent const*) (mitkContourTool.cpp:129)

22949== by 0x2EB51BEA: mitk::TSpecificStateMachineFunctor<mitk::SegTool2D>::DoAction(mitk::Action*, mitk::StateEvent const*) (mitkStateMachine.h:62)

22949== by 0x19C671A7: mitk::StateMachine::ExecuteAction(mitk::Action*, mitk::StateEvent const*) (mitkStateMachine.cpp:197)

22949== by 0x19C66F4D: mitk::StateMachine::HandleEvent(mitk::StateEvent const*) (mitkStateMachine.cpp:168)

22949== Address 0x4afe08a0 is 80 bytes inside a block of size 93 free'd

22949== at 0x4C27FF2: operator delete(void*) (vg_replace_malloc.c:387)

22949== by 0x6A1A1E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.16)

22949== by 0x1ABD1B5F: itk::ObjectFactoryBase::CreateObject(char const*) (itkObjectFactoryBase.cxx:558)

22949== by 0x1ABD0922: itk::ObjectFactoryBase::CreateInstance(char const*) (itkObjectFactoryBase.cxx:120)

22949== by 0x19B4CCC1: itk::ObjectFactory<itk::BoundingBox<unsigned long, 3, float, itk::VectorContainer<unsigned long, itk::Point<float, 3u> > > >::Create() (itkObjectFactory.h:52)

22949== by 0x19B4C755: itk::BoundingBox<unsigned long, 3, float, itk::VectorContainer<unsigned long, itk::Point<float, 3u> > >::New() (in /home/espakm/src/MITK-debug/MITK-build/bin/libMitk.so)

22949== by 0x19B4C35B: itk::AffineGeometryFrame<float, 3u>::SetBoundsArray(itk::FixedArray<float, 6u> const&, itk::SmartPointer<itk::BoundingBox<unsigned long, 3, float, itk::VectorContainer<unsigned long, itk::Point<float, 3u> > > >&) (itkAffineGeometryFrame.txx:80)

22949== by 0x19B7D8F1: mitk::Geometry3D::SetFloatBounds(float const*) (mitkGeometry3D.cpp:147)

22949== by 0x19B7D43D: mitk::Geometry3D::Initialize() (mitkGeometry3D.cpp:91)

22949== by 0x19C2163F: mitk::TimeSlicedGeometry::InitializeEmpty(unsigned int) (mitkTimeSlicedGeometry.cpp:258)

22949== by 0x19C213FB: mitk::TimeSlicedGeometry::InitializeEvenlyTimed(mitk::Geometry3D*, unsigned int) (mitkTimeSlicedGeometry.cpp:235)

22949== by 0x19B5380E: mitk::BaseData::SetGeometry(mitk::Geometry3D*) (mitkBaseData.cpp:115)

22949

22949== Invalid read of size 8

22949== at 0x5EB5197: QFutureWatcherBase::isRunning() const (in /usr/lib/x86_64-linux-gnu/libQtCore.so.4.7.4)

22949== by 0x2F4A690C: QmitkSlicesInterpolator::OnSurfaceInterpolationInfoChanged(itk::EventObject const&) (QmitkSlicesInterpolator.cpp:947)

22949== by 0x2F4B463F: itk::ReceptorMemberCommand<QmitkSlicesInterpolator>::Execute(itk::Object const*, itk::EventObject const&) (itkCommand.h:195)

22949== by 0x1ABCE70B: itk::SubjectImplementation::InvokeEvent(itk::EventObject const&, itk::Object const*) (itkObject.cxx:160)

22949== by 0x1ABCF3C7: itk::Object::InvokeEvent(itk::EventObject const&) const (itkObject.cxx:461)

22949== by 0x1ABCEBA3: itk::Object::Modified() const (itkObject.cxx:300)

22949== by 0x2EA33D8D: mitk::SurfaceInterpolationController::AddNewContour(itk::SmartPointer<mitk::Surface>, mitk::RestorePlanePositionOperation*) (mitkSurfaceInterpolationController.cpp:110)

22949== by 0x2EB4FB83: mitk::SegTool2D::WriteBackSegmentationResult(mitk::PositionEvent const*, mitk::Image*) (mitkSegTool2D.cpp:306)

22949== by 0x2EB3E19B: mitk::ContourTool::OnMouseReleased(mitk::Action*, mitk::StateEvent const*) (mitkContourTool.cpp:129)

22949== by 0x2EB51BEA: mitk::TSpecificStateMachineFunctor<mitk::SegTool2D>::DoAction(mitk::Action*, mitk::StateEvent const*) (mitkStateMachine.h:62)

22949== by 0x19C671A7: mitk::StateMachine::ExecuteAction(mitk::Action*, mitk::StateEvent const*) (mitkStateMachine.cpp:197)

22949== by 0x19C66F4D: mitk::StateMachine::HandleEvent(mitk::StateEvent const*) (mitkStateMachine.cpp:168)

22949== Address 0x454545336a4c66a9 is not stack'd, malloc'd or (recently) free'd

22949

22949

22949== Process terminating with default action of signal 11 (SIGSEGV)

22949== General Protection Fault

22949== at 0x5EB5197: QFutureWatcherBase::isRunning() const (in /usr/lib/x86_64-linux-gnu/libQtCore.so.4.7.4)

22949== by 0x2F4A690C: QmitkSlicesInterpolator::OnSurfaceInterpolationInfoChanged(itk::EventObject const&) (QmitkSlicesInterpolator.cpp:947)

22949== by 0x2F4B463F: itk::ReceptorMemberCommand<QmitkSlicesInterpolator>::Execute(itk::Object const*, itk::EventObject const&) (itkCommand.h:195)

22949== by 0x1ABCE70B: itk::SubjectImplementation::InvokeEvent(itk::EventObject const&, itk::Object const*) (itkObject.cxx:160)

22949== by 0x1ABCF3C7: itk::Object::InvokeEvent(itk::EventObject const&) const (itkObject.cxx:461)

22949== by 0x1ABCEBA3: itk::Object::Modified() const (itkObject.cxx:300)

22949== by 0x2EA33D8D: mitk::SurfaceInterpolationController::AddNewContour(itk::SmartPointer<mitk::Surface>, mitk::RestorePlanePositionOperation*) (mitkSurfaceInterpolationController.cpp:110)

22949== by 0x2EB4FB83: mitk::SegTool2D::WriteBackSegmentationResult(mitk::PositionEvent const*, mitk::Image*) (mitkSegTool2D.cpp:306)

22949== by 0x2EB3E19B: mitk::ContourTool::OnMouseReleased(mitk::Action*, mitk::StateEvent const*) (mitkContourTool.cpp:129)

22949== by 0x2EB51BEA: mitk::TSpecificStateMachineFunctor<mitk::SegTool2D>::DoAction(mitk::Action*, mitk::StateEvent const*) (mitkStateMachine.h:62)

22949== by 0x19C671A7: mitk::StateMachine::ExecuteAction(mitk::Action*, mitk::StateEvent const*) (mitkStateMachine.cpp:197)

22949== by 0x19C66F4D: mitk::StateMachine::HandleEvent(mitk::StateEvent const*) (mitkStateMachine.cpp:168)

22949

22949== HEAP SUMMARY:

22949== in use at exit: 254,492,338 bytes in 203,816 blocks

22949== total heap usage: 4,271,578 allocs, 4,067,762 frees, 1,095,134,626 bytes allocated

22949

22949== LEAK SUMMARY:

22949== definitely lost: 20,717 bytes in 336 blocks

22949== indirectly lost: 92,050 bytes in 1,700 blocks

22949== possibly lost: 149,833,121 bytes in 66,586 blocks

22949== still reachable: 104,546,450 bytes in 135,194 blocks

22949== suppressed: 0 bytes in 0 blocks

22949== Rerun with --leak-check=full to see details of leaked memory

22949

22949== For counts of detected and suppressed errors, rerun with: -v

22949== Use --track-origins=yes to see where uninitialised values come from

22949== ERROR SUMMARY: 334909 errors from 34 contexts (suppressed: 42 from 8)

Szegmentálási hiba

Event Timeline

Reset to default assignee since t.heimann left the group

Hi Miklos, could you please give some more detailed information of how you produced this bug? How did you manage it that the contours were still green? Which drop down button do you mean?

Referring to my previous comment: Miklos can you please confirm that this bug is still present? How exactly can we reproduce this bug?

Sorry, I will try to reproduce this early next week. I will let you know what I find before the party time. ;-)

Since it is not possible for us to reproduce this bug I am marking this bug as incomplete. Miklos did you manage to reproduce it? If not I would like to close this issue

Changed Target Milestone to after next release

I am closing this bug. Last activity was moths ago and we were not able to reproduce it. Feel free to reopen this issue if this bug occurs again Miklos.

kislinsk changed the task status from Invalid to Spite.Jun 27 2018, 1:31 PM
kislinsk added a project: Bulk Edit.
kislinsk changed the task status from Spite to Invalid.Jun 27 2018, 1:36 PM
kislinsk removed a project: Bulk Edit.