diff options
| author | Even Rouault <even.rouault@spatialys.com> | 2022-03-18 22:21:20 +0100 |
|---|---|---|
| committer | Even Rouault <even.rouault@spatialys.com> | 2022-03-18 22:22:15 +0100 |
| commit | 0dbff99390d1a027d89d89762af23121224a9415 (patch) | |
| tree | 4036d18c81a53eacb0dd13a8947d2eef48b709b2 | |
| parent | afb279808b4d1d027e52f7c6fd772896111dfac2 (diff) | |
| download | PROJ-0dbff99390d1a027d89d89762af23121224a9415.tar.gz PROJ-0dbff99390d1a027d89d89762af23121224a9415.zip | |
SingleCRS::baseIsEquivalentTo(): fix potential crash that is triggered by fdf5111a9a790926aacec75a07d30508a8ed9c91 changes
| -rw-r--r-- | src/iso19111/crs.cpp | 6 |
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; } |
