diff --git a/Modules/Visualization/IceViewer/src/otbIce.cxx b/Modules/Visualization/IceViewer/src/otbIce.cxx
index 4afffe3abdecb2930813e3a960ec4421b5c3985d..1a0f425f8a4d5a27a68dad486657f1bfbe05163f 100644
--- a/Modules/Visualization/IceViewer/src/otbIce.cxx
+++ b/Modules/Visualization/IceViewer/src/otbIce.cxx
@@ -39,7 +39,7 @@ int main(int argc, char* argv[])
   char* demdir    = getenv("OTB_DEM_DIR");
   char* geoidfile = getenv("OTB_GEOID_FILE");
 
-  otb::DEMHandler::Pointer demHandler = otb::DEMHandler::Instance();
+  auto& demHandler = otb::DEMHandler::GetInstance();
 
   if (demdir != nullptr)
   {