diff --git a/Modules/Adapters/OSSIMAdapters/src/otbMapProjectionAdapter.cxx b/Modules/Adapters/OSSIMAdapters/src/otbMapProjectionAdapter.cxx index cf7fe71ce79c926b768a23522beef1f84edf009f..54785258d096842fabd6e2692fcf0033fd3edb6f 100644 --- a/Modules/Adapters/OSSIMAdapters/src/otbMapProjectionAdapter.cxx +++ b/Modules/Adapters/OSSIMAdapters/src/otbMapProjectionAdapter.cxx @@ -195,9 +195,16 @@ std::string MapProjectionAdapter::GetParameter(const std::string& key) const if (projectionName.compare("ossimTransMercatorProjection") == 0) { const ossimTransMercatorProjection* tmProjection = dynamic_cast<const ossimTransMercatorProjection*>(this->GetMapProjection()); - if (key.compare("ScaleFactor") == 0) + if (!tmProjection) { - return Utils::ConvertToString(tmProjection->getScaleFactor()); + itkExceptionMacro("Error casting object to ossimTransMercatorProjection."); + } + else + { + if (key.compare("ScaleFactor") == 0) + { + return Utils::ConvertToString(tmProjection->getScaleFactor()); + } } }