diff --git a/Modules/Adapters/GdalAdapters/src/otbOGRDataSourceWrapper.cxx b/Modules/Adapters/GdalAdapters/src/otbOGRDataSourceWrapper.cxx index 367e0d5389a17f3f34a42d8e0588d57519bc555d..b415ed076f8191211200d0f3552da1f3f230d4c1 100644 --- a/Modules/Adapters/GdalAdapters/src/otbOGRDataSourceWrapper.cxx +++ b/Modules/Adapters/GdalAdapters/src/otbOGRDataSourceWrapper.cxx @@ -235,23 +235,24 @@ void DeleteDataSource(std::string const& datasourceName) } else { - success = false; + itkGenericExceptionMacro(<< "Cannot open data source " << simpleFileName + << ": " << CPLGetLastErrorMsg()); } if(poDriver) { OGRErr ret = poDriver->Delete(simpleFileName.c_str()); - success = ret == OGRERR_NONE; + if (ret != OGRERR_NONE) + { + itkGenericExceptionMacro(<< "Deletion of data source " << simpleFileName + << " failed: " << CPLGetLastErrorMsg()); + } } else { - success = false; + itkGenericExceptionMacro(<< "Cannot get driver associated with data source " << simpleFileName + << ": " << CPLGetLastErrorMsg()); } - if (!success) - { - itkGenericExceptionMacro(<< "Deletion of data source " << simpleFileName - << " failed: " << CPLGetLastErrorMsg()); - } } otb::ogr::DataSource::Pointer