From fb4bdad7e5a8f3954d002321cb3bfd842607c9fd Mon Sep 17 00:00:00 2001 From: Sandro Santilli Date: Wed, 17 Oct 2012 09:52:34 +0000 Subject: [PATCH] It is OUT_MAX_DOUBLE_PRECISION, not OUT_MAX_DIGS_DOUBLE, we should use These macros should really get out of liblwgeom.h and be properly documented... git-svn-id: http://svn.osgeo.org/postgis/trunk@10449 b70326c6-7e19-0410-871a-916f4a2858ee --- liblwgeom/lwout_geojson.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/liblwgeom/lwout_geojson.c b/liblwgeom/lwout_geojson.c index 60d2c2e7a..3542d8a61 100644 --- a/liblwgeom/lwout_geojson.c +++ b/liblwgeom/lwout_geojson.c @@ -13,6 +13,7 @@ #include "liblwgeom_internal.h" #include /* strlen */ +#include static char *asgeojson_point(const LWPOINT *point, char *srs, GBOX *bbox, int precision); static char *asgeojson_line(const LWLINE *line, char *srs, GBOX *bbox, int precision); @@ -38,7 +39,7 @@ lwgeom_to_geojson(const LWGEOM *geom, char *srs, int precision, int has_bbox) GBOX tmp; int rv; - if ( precision > OUT_MAX_DIGS_DOUBLE ) precision = OUT_MAX_DIGS_DOUBLE; + if ( precision > OUT_MAX_DOUBLE_PRECISION ) precision = OUT_MAX_DOUBLE_PRECISION; if (has_bbox) { @@ -668,6 +669,8 @@ pointArray_to_geojson(POINTARRAY *pa, char *output, int precision) char y[OUT_MAX_DIGS_DOUBLE+OUT_MAX_DOUBLE_PRECISION+1]; char z[OUT_MAX_DIGS_DOUBLE+OUT_MAX_DOUBLE_PRECISION+1]; + assert ( precision <= OUT_MAX_DOUBLE_PRECISION ); + ptr = output; if (!FLAGS_GET_Z(pa->flags)) @@ -734,6 +737,7 @@ pointArray_to_geojson(POINTARRAY *pa, char *output, int precision) static size_t pointArray_geojson_size(POINTARRAY *pa, int precision) { + assert ( precision <= OUT_MAX_DOUBLE_PRECISION ); if (FLAGS_NDIMS(pa->flags) == 2) return (OUT_MAX_DIGS_DOUBLE + precision + sizeof(",")) * 2 * pa->npoints + sizeof(",[]"); -- 2.50.1