aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2022-03-18 22:21:20 +0100
committerEven Rouault <even.rouault@spatialys.com>2022-03-18 22:21:20 +0100
commit278b0f931a11d668a1c0abe796e8cd64da4db17c (patch)
tree2fa1320334113580376a8bd0bfb3bb054d16b761
parentab3383a4483f65679ae4a687cc8660572cd6102c (diff)
downloadPROJ-278b0f931a11d668a1c0abe796e8cd64da4db17c.tar.gz
PROJ-278b0f931a11d668a1c0abe796e8cd64da4db17c.zip
SingleCRS::baseIsEquivalentTo(): fix potential crash that is triggered by fdf5111a9a790926aacec75a07d30508a8ed9c91 changes
-rw-r--r--src/iso19111/crs.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/iso19111/crs.cpp b/src/iso19111/crs.cpp
index e4b8094f..e6f38e49 100644
--- a/src/iso19111/crs.cpp
+++ b/src/iso19111/crs.cpp
@@ -1460,7 +1460,8 @@ bool SingleCRS::baseIsEquivalentTo(
const auto &thisDatum = d->datum;
const auto &otherDatum = otherSingleCRS->d->datum;
if (thisDatum) {
- if (!thisDatum->_isEquivalentTo(otherDatum.get(), criterion,
+ if (otherDatum == nullptr ||
+ !thisDatum->_isEquivalentTo(otherDatum.get(), criterion,
dbContext)) {
return false;
}
@@ -1473,7 +1474,8 @@ bool SingleCRS::baseIsEquivalentTo(
const auto &thisDatumEnsemble = d->datumEnsemble;
const auto &otherDatumEnsemble = otherSingleCRS->d->datumEnsemble;
if (thisDatumEnsemble) {
- if (!thisDatumEnsemble->_isEquivalentTo(otherDatumEnsemble.get(),
+ if (otherDatumEnsemble == nullptr ||
+ !thisDatumEnsemble->_isEquivalentTo(otherDatumEnsemble.get(),
criterion, dbContext)) {
return false;
}