aboutsummaryrefslogtreecommitdiff
path: root/src/ell_set.cpp
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@mines-paris.org>2019-03-21 13:52:43 +0100
committerGitHub <noreply@github.com>2019-03-21 13:52:43 +0100
commit493806b4bbd388f19e7642edae40724b9015edb6 (patch)
treeada7b394f7d2a75476539a1baae76fe0d2e9ad3c /src/ell_set.cpp
parentd92832266a4e073d061886ce995e81064c1938e1 (diff)
parent9fe407c96c76a15440f0bdd523ed685d59a830c9 (diff)
downloadPROJ-493806b4bbd388f19e7642edae40724b9015edb6.tar.gz
PROJ-493806b4bbd388f19e7642edae40724b9015edb6.zip
Merge pull request #1339 from OSGeo/backport-1335-on-6.0
Backport #1335 on 6.0
Diffstat (limited to 'src/ell_set.cpp')
-rw-r--r--src/ell_set.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/ell_set.cpp b/src/ell_set.cpp
index 386b4f46..d0714bee 100644
--- a/src/ell_set.cpp
+++ b/src/ell_set.cpp
@@ -542,6 +542,10 @@ int pj_calc_ellipsoid_params (PJ *P, double a, double es) {
/* flattening */
if (0==P->f)
P->f = 1 - cos (P->alpha); /* = 1 - sqrt (1 - PIN->es); */
+ if (P->f == 1.0) {
+ pj_ctx_set_errno( P->ctx, PJD_ERR_ECCENTRICITY_IS_ONE_OR_GREATER);
+ return PJD_ERR_ECCENTRICITY_IS_ONE_OR_GREATER;
+ }
P->rf = P->f != 0.0 ? 1.0/P->f: HUGE_VAL;
/* second flattening */