From 5a1fe648dcd034b67ca82d383d73bc59e71b380c Mon Sep 17 00:00:00 2001 From: Peter Petrik Date: Wed, 9 Sep 2020 08:21:22 +0200 Subject: [PATCH] update MDAL to 0.7.0 --- external/mdal/frmts/mdal_gdal_netcdf.cpp | 7 +++++-- external/mdal/mdal.cpp | 2 +- external/mdal/mdal_memory_data_model.cpp | 12 +++++++++--- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/external/mdal/frmts/mdal_gdal_netcdf.cpp b/external/mdal/frmts/mdal_gdal_netcdf.cpp index c4d239f190a..866084a9f58 100644 --- a/external/mdal/frmts/mdal_gdal_netcdf.cpp +++ b/external/mdal/frmts/mdal_gdal_netcdf.cpp @@ -39,8 +39,11 @@ bool MDAL::DriverGdalNetCDF::parseBandInfo( const MDAL::GdalDataset *cfGDALDatas metadata_hash::const_iterator iter; iter = metadata.find( "netcdf_dim_time" ); - if ( iter == metadata.end() ) return true; //FAILURE, skip no-time bands - *time = MDAL::RelativeTimestamp( parseMetadataTime( iter->second ), mTimeUnit ); + + if ( iter == metadata.end() ) + *time = MDAL::RelativeTimestamp(); + else + *time = MDAL::RelativeTimestamp( parseMetadataTime( iter->second ), mTimeUnit ); // NAME iter = metadata.find( "long_name" ); diff --git a/external/mdal/mdal.cpp b/external/mdal/mdal.cpp index 5d18b17c3b2..d6a92d3ec85 100644 --- a/external/mdal/mdal.cpp +++ b/external/mdal/mdal.cpp @@ -21,7 +21,7 @@ static const char *EMPTY_STR = ""; const char *MDAL_Version() { - return "0.6.93"; + return "0.7.0"; } MDAL_Status MDAL_LastStatus() diff --git a/external/mdal/mdal_memory_data_model.cpp b/external/mdal/mdal_memory_data_model.cpp index d5e033a30f3..3d4efc5f7c3 100644 --- a/external/mdal/mdal_memory_data_model.cpp +++ b/external/mdal/mdal_memory_data_model.cpp @@ -205,9 +205,15 @@ void MDAL::MemoryMesh::addFaces( size_t faceCount, size_t driverMaxVerticesPerFa Face face( faceSize ); for ( size_t i = 0; i < faceSize; ++i ) { - size_t indice = vertexIndices[indicesIndex + i]; - if ( indice >= 0 && indice < mVertices.size() ) - face[i] = indice; + const int indice = vertexIndices[indicesIndex + i]; + if ( indice < 0 ) + { + MDAL::Log::error( Err_InvalidData, "Invalid vertex index when adding faces" ); + return; + } + size_t indiceU = static_cast< size_t >( indice ); + if ( indiceU < mVertices.size() ) + face[i] = indiceU; else { MDAL::Log::error( Err_InvalidData, "Invalid vertex index when adding faces" );