Open
Description
I suspect ITK_USE_BRAINWEB_DATA does not get a lot of testing...
If I enable that option, build, then do ctest -V -R DeformableRegistration8Test3
, I get a failure like:
Starting Registration
ExceptionObject caught !
itk::ImageFileReaderException (0x60f000002280)
Location: "virtual void itk::ImageFileReader<itk::Image<float, 3>>::GenerateOutputInformation() [TOutputImage = itk::Image<float, 3>, ConvertPixelTraits = itk::DefaultConvertPixelTraits<float>]"
File: /Users/sean/external/ITK/Modules/IO/ImageBase/include/itkImageFileReader.hxx
Line: 135
Description: Could not create IO object for reading file /Users/sean/external/ITK-ASan-bin/Testing/Temporary/BSplineWarping2Test.mhd
The file doesn't exist.
Filename = /Users/sean/external/ITK-ASan-bin/Testing/Temporary/BSplineWarping2Test.mhd
Indeed that file is not there. If I then do ctest -j22 -R .
, that seems to tickle something else to get/create the file. Now if I run just DeformableRegistration8Test3
it finds that file, and I get farther.
It runs for minutes and consumes tonnes of RAM. I have 192 GiB of physical RAM and it uses it all and starts swapping.
If I then enable UBSan I find a use of a null pointer. I chased it a bit and if you take this virtualImage
:
and add the line after assert(virtualImage->GetBufferPointer());
that's the null, which I believe is unexpected.