From bb50fb517f9f2a09891425173aeb150c07126778 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Tue, 21 Dec 1999 17:01:44 +0000 Subject: [PATCH] This patch will avoid SIGFPE on some geo functions , if PostgreSQL is compiled with DEC C. DEC C doesn't handle double values greater than DBL_MAX, but some PostgreSQL geo functions assign greater than DBL_MAX values to some vars in some special cases - that couses SIGFPE. I dunno if that is the only place to fix to work well with DEC C. Kirill Nosov. --- src/backend/utils/adt/geo_ops.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/backend/utils/adt/geo_ops.c b/src/backend/utils/adt/geo_ops.c index 7bb2aba7ad..b56b7f5d8d 100644 --- a/src/backend/utils/adt/geo_ops.c +++ b/src/backend/utils/adt/geo_ops.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/adt/geo_ops.c,v 1.45 1999/07/17 20:17:56 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/adt/geo_ops.c,v 1.46 1999/12/21 17:01:44 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -876,7 +876,10 @@ line_construct_pm(Point *pt, double m) /* use "mx - y + yinter = 0" */ result->A = m; result->B = -1.0; - result->C = pt->y - m * pt->x; + if (m==DBL_MAX) + result->C = pt->y; + else + result->C = pt->y - m * pt->x; #ifdef NOT_USED result->m = m; -- 2.40.0