diff --git a/src/iso19111/crs.cpp b/src/iso19111/crs.cpp index 7a123bdf51..d858f7778d 100644 --- a/src/iso19111/crs.cpp +++ b/src/iso19111/crs.cpp @@ -561,9 +561,9 @@ CRSNNPtr CRS::createBoundCRSToWGS84IfPossible( auto extent1 = l_domains[1]->domainOfValidity(); if (extent0 && extent1) { if (extent0->contains(NN_NO_CHECK(extent1))) { - extent = extent0; + extent = std::move(extent0); } else if (extent1->contains(NN_NO_CHECK(extent0))) { - extent = extent1; + extent = std::move(extent1); } } } diff --git a/src/iso19111/operation/coordinateoperationfactory.cpp b/src/iso19111/operation/coordinateoperationfactory.cpp index b8673d056b..a5385cf504 100644 --- a/src/iso19111/operation/coordinateoperationfactory.cpp +++ b/src/iso19111/operation/coordinateoperationfactory.cpp @@ -5360,8 +5360,10 @@ void CoordinateOperationFactory::Private::createOperationsVertToGeogSynthetized( const auto dbContext = authFactory ? authFactory->databaseContext().as_nullable() : nullptr; - const auto vertDatumName = vertSrc->datumNonNull(dbContext)->nameStr(); - const auto geogDstDatumName = geogDst->datumNonNull(dbContext)->nameStr(); + const auto vertDatum = vertSrc->datumNonNull(dbContext); + const auto &vertDatumName = vertDatum->nameStr(); + const auto geogDstDatum = geogDst->datumNonNull(dbContext); + const auto &geogDstDatumName = geogDstDatum->nameStr(); // We accept a vertical CRS whose datum name is the same datum name as the // source geographic CRS, or whose datum name is "Ellipsoid" if it is part // of a CompoundCRS whose horizontal CRS has a geodetic datum of the same