aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2019-12-11 00:13:57 +0100
committerEven Rouault <even.rouault@spatialys.com>2019-12-11 22:09:05 +0100
commit3a035e99f786b61837efcdf56a86748828e1f155 (patch)
treeeba50a62c493ff44cbd9525737bdc3c4962718bc /src
parent29474bd7fdac013841a4795e93f714bba7791c56 (diff)
downloadPROJ-3a035e99f786b61837efcdf56a86748828e1f155.tar.gz
PROJ-3a035e99f786b61837efcdf56a86748828e1f155.zip
Make EPSG:102100 resolve to ESRI:102100 (fixes #1730)
Diffstat (limited to 'src')
-rw-r--r--src/iso19111/io.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/iso19111/io.cpp b/src/iso19111/io.cpp
index e0e6152a..a35c4cd6 100644
--- a/src/iso19111/io.cpp
+++ b/src/iso19111/io.cpp
@@ -5673,6 +5673,14 @@ static BaseObjectNNPtr createFromUserInput(const std::string &text,
try {
return factory->createCoordinateReferenceSystem(code);
} catch (...) {
+
+ // Convenience for well-known misused code
+ // See https://github.com/OSGeo/PROJ/issues/1730
+ if (ci_equal(authName, "EPSG") && code == "102100") {
+ factory = AuthorityFactory::create(dbContextNNPtr, "ESRI");
+ return factory->createCoordinateReferenceSystem(code);
+ }
+
const auto authorities = dbContextNNPtr->getAuthorities();
for (const auto &authCandidate : authorities) {
if (ci_equal(authCandidate, authName)) {