From 9d9621a2d4086cdfc3f19c106fdc78924dc81577 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Traizet?= <cedric.traizet@c-s.fr> Date: Mon, 24 Aug 2020 17:35:48 +0200 Subject: [PATCH] ENH: code review --- Modules/IO/IOGDAL/src/otbDEMHandler.cxx | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/Modules/IO/IOGDAL/src/otbDEMHandler.cxx b/Modules/IO/IOGDAL/src/otbDEMHandler.cxx index d91621e226..991e454668 100644 --- a/Modules/IO/IOGDAL/src/otbDEMHandler.cxx +++ b/Modules/IO/IOGDAL/src/otbDEMHandler.cxx @@ -138,7 +138,11 @@ DEMHandler::DEMHandler() : m_Dataset(nullptr), DEMHandler::~DEMHandler() { - GDALClose(m_GeoidDS); + if (m_GeoidDS) + { + GDALClose(m_GeoidDS); + } + ClearDEMs(); } @@ -180,16 +184,15 @@ void DEMHandler::OpenDEMDirectory(const std::string& DEMDirectory) } else { - auto vrtDatasetList = new GDALDatasetH[vrtSize]; + std::vector<GDALDatasetH> vrtDatasetList(vrtSize); for (int i = 0; i < vrtSize; i++) { vrtDatasetList[i] = m_DatasetList[i]->GetDataSet(); } - m_Dataset = (GDALDataset *) GDALBuildVRT(nullptr, vrtSize, vrtDatasetList, - nullptr, nullptr, nullptr); + m_Dataset = static_cast<GDALDataset *> (GDALBuildVRT(nullptr, vrtSize, vrtDatasetList.data(), + nullptr, nullptr, nullptr)); m_DEMDirectories.push_back(DEMDirectory); - delete[] vrtDatasetList; } } -- GitLab