pgsql: Fix line_construct_pm() for the case of "infinite" (DBL_MAX) slo - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Fix line_construct_pm() for the case of "infinite" (DBL_MAX) slo
Date
Msg-id E1PGIj3-0002aC-OB@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix line_construct_pm() for the case of "infinite" (DBL_MAX) slope.

This code was just plain wrong: what you got was not a line through the
given point but a line almost indistinguishable from the Y-axis, although
not truly vertical.  The only caller that tries to use this function with
m == DBL_MAX is dist_ps_internal for the case where the lseg is horizontal;
it would end up producing the distance from the given point to the place
where the lseg's line crosses the Y-axis.  That function is used by other
operators too, so there are several operators that could compute wrong
distances from a line segment to something else.  Per bug #5745 from
jindiax.

Back-patch to all supported branches.

Branch
------
REL8_3_STABLE

Details
-------
http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=90e8efa338dd2f9b96edce8fc2f033ea9ca5b1c7

Modified Files
--------------
src/backend/utils/adt/geo_ops.c |   15 +++++++++++----
1 files changed, 11 insertions(+), 4 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Fix line_construct_pm() for the case of "infinite" (DBL_MAX) slo
Next
From: Tom Lane
Date:
Subject: pgsql: Fix line_construct_pm() for the case of "infinite" (DBL_MAX) slo