aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/geo_ops.c
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2014-02-24 12:24:00 -0500
committerBruce Momjian <bruce@momjian.us>2014-02-24 12:24:00 -0500
commit423f69ab64a6e51fbdd97a83c1dc55d68ca6190d (patch)
tree9af54dca4b667753db534aee024b5e916600bacb /src/backend/utils/adt/geo_ops.c
parent8457d0beca731bf062bb0d126870d9a291ab47a5 (diff)
downloadpostgresql-423f69ab64a6e51fbdd97a83c1dc55d68ca6190d.tar.gz
postgresql-423f69ab64a6e51fbdd97a83c1dc55d68ca6190d.zip
Allow single-point polygons to be converted to circles
This allows finding the center of a single-point polygon and converting it to a point. Per report from Josef Grahn
Diffstat (limited to 'src/backend/utils/adt/geo_ops.c')
-rw-r--r--src/backend/utils/adt/geo_ops.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/src/backend/utils/adt/geo_ops.c b/src/backend/utils/adt/geo_ops.c
index f267920649a..72cb4e991fc 100644
--- a/src/backend/utils/adt/geo_ops.c
+++ b/src/backend/utils/adt/geo_ops.c
@@ -5191,7 +5191,7 @@ poly_circle(PG_FUNCTION_ARGS)
CIRCLE *circle;
int i;
- if (poly->npts < 2)
+ if (poly->npts < 1)
ereport(ERROR,
(errcode(ERRCODE_INVALID_PARAMETER_VALUE),
errmsg("cannot convert empty polygon to circle")));
@@ -5214,11 +5214,6 @@ poly_circle(PG_FUNCTION_ARGS)
circle->radius += point_dt(&poly->p[i], &circle->center);
circle->radius /= poly->npts;
- if (FPzero(circle->radius))
- ereport(ERROR,
- (errcode(ERRCODE_INVALID_PARAMETER_VALUE),
- errmsg("cannot convert empty polygon to circle")));
-
PG_RETURN_CIRCLE_P(circle);
}