From 7f0b6bd9c6978ac7639bcaf0de452cb29318e683 Mon Sep 17 00:00:00 2001 From: Even Rouault Date: Sun, 10 Oct 2021 20:43:31 +0200 Subject: proj_crs_get_datum_forced(): catch potential exception (fixes CID 358433, 358434, 358435) --- src/iso19111/c_api.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/iso19111/c_api.cpp b/src/iso19111/c_api.cpp index 9493452c..acf36402 100644 --- a/src/iso19111/c_api.cpp +++ b/src/iso19111/c_api.cpp @@ -8479,7 +8479,12 @@ PJ *proj_crs_get_datum_forced(PJ_CONTEXT *ctx, const PJ *crs) { const auto &datumEnsemble = l_crs->datumEnsemble(); assert(datumEnsemble); auto dbContext = getDBcontextNoException(ctx, __FUNCTION__); - return pj_obj_create(ctx, datumEnsemble->asDatum(dbContext)); + try { + return pj_obj_create(ctx, datumEnsemble->asDatum(dbContext)); + } catch (const std::exception &e) { + proj_log_debug(ctx, __FUNCTION__, e.what()); + return nullptr; + } } // --------------------------------------------------------------------------- -- cgit v1.2.3