From f3300da77834c9e14761106eabe34ede1424e5fd Mon Sep 17 00:00:00 2001 From: Julien Michel <julien.michel@orfeo-toolbox.org> Date: Thu, 15 Jan 2009 15:24:13 +0100 Subject: [PATCH] BUG: Adding a test to prevent segfault when no input --- Code/Common/otbExtractROIBase.txx | 6 ++++++ Testing/Code/IO/CMakeLists.txt | 25 ++++++++++++++++--------- Testing/Code/IO/otbIOTests16.cxx | 1 + 3 files changed, 23 insertions(+), 9 deletions(-) diff --git a/Code/Common/otbExtractROIBase.txx b/Code/Common/otbExtractROIBase.txx index 4a618e04a8..c999e4a5af 100644 --- a/Code/Common/otbExtractROIBase.txx +++ b/Code/Common/otbExtractROIBase.txx @@ -177,6 +177,12 @@ ExtractROIBase<TInputImage,TOutputImage> // Si SizeX(Y) est nulle, alors SizeX(Y) est egale � la SizeX(Y) de l'image typename Superclass::InputImageConstPointer inputPtr = this->GetInput(); + // Check if input exists or not before doing anything + if(!inputPtr) + { + return; + } + // Recupere Region de l'image d'entree // const InputImageRegionType& inputRegion = inputPtr->GetRequestedRegion(); const InputImageRegionType& inputRegion = inputPtr->GetLargestPossibleRegion(); diff --git a/Testing/Code/IO/CMakeLists.txt b/Testing/Code/IO/CMakeLists.txt index d5db260830..432a3c7a5d 100755 --- a/Testing/Code/IO/CMakeLists.txt +++ b/Testing/Code/IO/CMakeLists.txt @@ -1561,10 +1561,24 @@ ADD_TEST(ioTvKMLVectorDataIOFileReaderLines ${IO_TESTS15} # --- RAD --- +IF(OTB_DATA_USE_LARGEINPUT) + # Can read a RAD format (ci2) ADD_TEST(ioTuRADImageIOCanRead_RADCI2 ${IO_TESTS16} otbRADImageIOTestCanRead - ${INPUTDATA}/RADCI2_image_simu_poupees.rad ) + ${LARGEDATA}/RAD_CI2/3017_HH.rad) + +# Convert a ci2.RAD file into ENVI format +ADD_TEST(ioTvImageFileReaderRADCI22ENVI ${IO_TESTS16} +--compare-image ${TOL} + ${BASELINE}/ioImageFileReaderRADCI22ENVI.hdr + ${TEMP}/ioImageFileReaderRADCI22ENVI.hdr + otbImageFileReaderRADComplexFloatExtract + /home3/mathieu/guillaume/CD_CNES/RAD_CI2/3017_HH.rad + ${TEMP}/ioImageFileReaderRADCI22ENVI.hdr ) + +ENDIF(OTB_DATA_USE_LARGEINPUT) + # Can read a RAD format (cr4) ADD_TEST(ioTuRADImageIOCanRead_RADCR4sngl ${IO_TESTS16} @@ -1576,14 +1590,6 @@ ADD_TEST(ioTuRADImageIOCanRead_RADCR4mult ${IO_TESTS16} otbRADImageIOTestCanRead ${INPUTDATA}/RADCR4_multimage.rad ) - - -# Convert a ci2.RAD file into ENVI format -#ADD_TEST(ioTvImageFileReaderRADCI22ENVI ${IO_TESTS16} -# otbImageFileReaderRADComplexFloat -# /home3/mathieu/guillaume/CD_CNES/RAD_CI2/3017_HH.rad -# ${TEMP}/ioImageFileReaderRAD2ENVI.hdr ) - # Convert a cr4.RAD file into tif ADD_TEST(ioTvImageFileReaderRADCR42TIF ${IO_TESTS16} otbImageFileReaderRADComplexFloat @@ -1758,6 +1764,7 @@ otbImageFileReaderRADInt.cxx otbImageFileReaderRADFloat.cxx otbImageFileReaderRADComplexInt.cxx otbImageFileReaderRADComplexFloat.cxx +otbImageFileReaderRADComplexFloatExtract.cxx otbImageFileReaderRADComplexDouble.cxx otbPointSetFileReaderNew.cxx otbPointSetFileReader.cxx diff --git a/Testing/Code/IO/otbIOTests16.cxx b/Testing/Code/IO/otbIOTests16.cxx index ad7df7eac4..255d1e6ce1 100644 --- a/Testing/Code/IO/otbIOTests16.cxx +++ b/Testing/Code/IO/otbIOTests16.cxx @@ -34,6 +34,7 @@ REGISTER_TEST(otbImageFileReaderRADInt); REGISTER_TEST(otbImageFileReaderRADFloat); REGISTER_TEST(otbImageFileReaderRADComplexDouble); REGISTER_TEST(otbImageFileReaderRADComplexFloat); +REGISTER_TEST(otbImageFileReaderRADComplexFloatExtract); REGISTER_TEST(otbImageFileReaderRADComplexInt); REGISTER_TEST(otbPointSetFileReaderNew); REGISTER_TEST(otbPointSetFileReader); -- GitLab