System: Win64 VS 2017
How to reproduce:
# Load an image (e.g. brain.nrrd from MITKData)
# Use a plugin with a node selection widget and select the image (you could e.g. use org.mitk.gui.qt.datastorageviewertest, but any plugin with such a widget will do).
# Use "Close Project" button to remove all data
# Load the image again.
# Crash
Error Message:
Ausgelöste Ausnahme: Lesezugriffsverletzung
"this" war "0xFFFFFFFFFFFFFFFF".
Location: mitkGeometryTransformHolder.cpp:168
lang=c++
mitk::AffineTransform3D *GeometryTransformHolder::GetIndexToWorldTransform() { return m_IndexToWorldTransform; }
m_IndexToWorldTransform is not properly initialized wenn calling it ()operator.
The problem occured in context of selection widgets and could be patched for selection widgets in context of T26218.
But I would like to discuss it more explicitly because this problem could lead to crashes by any code that keeps smart pointers to node data, after they are removed from storage. The question is, why the mapper causes a violation and its data is invalid.