pgsql: In geo_ops.c, represent infinite slope as Infinity, not DBL_MAX.

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

pgsql: In geo_ops.c, represent infinite slope as Infinity, not DBL_MAX.

Tom Lane-2
In geo_ops.c, represent infinite slope as Infinity, not DBL_MAX.

Since we're assuming IEEE floats these days, there seems little
reason not to do this.  It has the advantage that when the slope is
computed as infinite due to the presence of Inf coordinates, we get
saner behavior than before from line_construct(), and thence also
in some dependent operations such as finding the closest point.

Also fix line_construct() to special-case slope zero.  The previous
coding got the right answer in most cases, but it could compute
C as NaN when the point has Inf coordinates.

Discussion: https://postgr.es/m/CAGf+fX70rWFOk5cd00uMfa__0yP+vtQg5ck7c2Onb-Yczp0URA@...

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/9fe649ea295f00baf6d0f0c1f9b0cb1298f64fb9

Modified Files
--------------
src/backend/utils/adt/geo_ops.c        |  19 ++-
src/test/regress/expected/geometry.out | 254 ++++++++++++++++-----------------
2 files changed, 140 insertions(+), 133 deletions(-)