aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@mines-paris.org>2019-03-21 16:03:31 +0100
committerGitHub <noreply@github.com>2019-03-21 16:03:31 +0100
commit371cf6dd5de00742e4c6b6ff4465ad02bb3b2a5a (patch)
treeea85b52979733c3ce3f77699fc25cb9b63c15932
parent493806b4bbd388f19e7642edae40724b9015edb6 (diff)
parentba2521c822896d7b68a7ac6509d64269b4c46731 (diff)
downloadPROJ-371cf6dd5de00742e4c6b6ff4465ad02bb3b2a5a.tar.gz
PROJ-371cf6dd5de00742e4c6b6ff4465ad02bb3b2a5a.zip
Merge pull request #1342 from OSGeo/backport-1340-on-6.0
Backport #1340 on 6.0
-rw-r--r--src/projections/aea.cpp4
-rw-r--r--test/gie/builtins.gie5
2 files changed, 9 insertions, 0 deletions
diff --git a/src/projections/aea.cpp b/src/projections/aea.cpp
index f457e836..8a80c49c 100644
--- a/src/projections/aea.cpp
+++ b/src/projections/aea.cpp
@@ -180,6 +180,10 @@ static PJ *setup(PJ *P) {
return destructor(P, 0);
Q->n = (m1 * m1 - m2 * m2) / (ml2 - ml1);
+ if (Q->n == 0) {
+ // Not quite, but es is very close to 1...
+ return destructor(P, PJD_ERR_ECCENTRICITY_IS_ONE_OR_GREATER);
+ }
}
Q->ec = 1. - .5 * P->one_es * log((1. - P->e) /
(1. + P->e)) / P->e;
diff --git a/test/gie/builtins.gie b/test/gie/builtins.gie
index 56724782..97009cff 100644
--- a/test/gie/builtins.gie
+++ b/test/gie/builtins.gie
@@ -69,6 +69,11 @@ expect failure errno lat_larger_than_90
operation +proj=aea +ellps=GRS80 +lat_2=900
expect failure errno lat_larger_than_90
+-------------------------------------------------------------------------------
+operation +proj=aea +a=9999999 +b=.9 +lat_2=1
+-------------------------------------------------------------------------
+expect failure errno eccentricity_is_one
+
===============================================================================
Azimuthal Equidistant
Azi, Sph&Ell