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:21:20 +0100 |
| commit | 278b0f931a11d668a1c0abe796e8cd64da4db17c (patch) | |
| tree | 2fa1320334113580376a8bd0bfb3bb054d16b761 | |
| parent | ab3383a4483f65679ae4a687cc8660572cd6102c (diff) | |
| download | PROJ-278b0f931a11d668a1c0abe796e8cd64da4db17c.tar.gz PROJ-278b0f931a11d668a1c0abe796e8cd64da4db17c.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; } |
