[postgis-tickets] r14970 - #3583, geojson crash on malformed multipolygon
Paul Ramsey
pramsey at cleverelephant.ca
Fri Jun 17 15:19:49 PDT 2016
Author: pramsey
Date: 2016-06-17 15:19:49 -0700 (Fri, 17 Jun 2016)
New Revision: 14970
Modified:
branches/2.1/NEWS
branches/2.1/liblwgeom/lwin_geojson.c
branches/2.1/regress/tickets.sql
branches/2.1/regress/tickets_expected
Log:
#3583, geojson crash on malformed multipolygon
Modified: branches/2.1/NEWS
===================================================================
--- branches/2.1/NEWS 2016-06-16 14:06:47 UTC (rev 14969)
+++ branches/2.1/NEWS 2016-06-17 22:19:49 UTC (rev 14970)
@@ -29,6 +29,7 @@
platforms
- #3565, ST_SetPoint can crash backend
- #3579, Crash in LWGEOM2GEOS
+ - #3583, Crash in ST_GeomFromGeoJSON on malformed multipolygon
PostGIS 2.1.8
Modified: branches/2.1/liblwgeom/lwin_geojson.c
===================================================================
--- branches/2.1/liblwgeom/lwin_geojson.c 2016-06-16 14:06:47 UTC (rev 14969)
+++ branches/2.1/liblwgeom/lwin_geojson.c 2016-06-17 22:19:49 UTC (rev 14970)
@@ -397,7 +397,7 @@
{
json_object* points = json_object_array_get_idx( poObjPoly, j );
- if( json_type_array == json_object_get_type( poObjPoly ) )
+ if( json_type_array == json_object_get_type( points ) )
{
POINTARRAY *pa = ptarray_construct_empty(1, 0, 1);
Modified: branches/2.1/regress/tickets.sql
===================================================================
--- branches/2.1/regress/tickets.sql 2016-06-16 14:06:47 UTC (rev 14969)
+++ branches/2.1/regress/tickets.sql 2016-06-17 22:19:49 UTC (rev 14970)
@@ -910,5 +910,9 @@
ST_Intersects(ST_Buffer(road.geom, sidewalk_offset + epsilon), sidewalks.geom) -- should be true
from road, sidewalks, params;
+-- #3583
+Select '#3583', ST_AsText(ST_GeomFromGeoJSON('{"type":"MultiPolygon", "coordinates":[[[139.10030364990232,35.16777444430609],5842.4224490305424]]}'));
+
+
-- Clean up
DELETE FROM spatial_ref_sys;
Modified: branches/2.1/regress/tickets_expected
===================================================================
--- branches/2.1/regress/tickets_expected 2016-06-16 14:06:47 UTC (rev 14969)
+++ branches/2.1/regress/tickets_expected 2016-06-17 22:19:49 UTC (rev 14970)
@@ -188,6 +188,7 @@
#745|GEOMETRYCOLLECTION(POLYGON((-72 42 1,-70 43 1,-71 41 1,-72 42 1)))
#1450|POINT|POLYGON
#1482|4326
+COPY 2
#852.1|1|f|f
#852.1|2|f|f
#852.2|1|t|t
@@ -263,3 +264,4 @@
#3375|GEOMETRYCOLLECTION(POINT(1 1))
ERROR: Cannot set point values on EMPTY geometry, use ST_AddPoint to add points
#3579|f|t
+#3583|MULTIPOLYGON Z (EMPTY)
More information about the postgis-tickets
mailing list