]> granicus.if.org Git - postgis/commitdiff
ST_ConcaveHull fix for EXtenriorRing is not a polygon
authorRegina Obe <lr@pcorp.us>
Wed, 20 Sep 2017 00:12:52 +0000 (00:12 +0000)
committerRegina Obe <lr@pcorp.us>
Wed, 20 Sep 2017 00:12:52 +0000 (00:12 +0000)
References #2836 for PostGIS 2.4.0

git-svn-id: http://svn.osgeo.org/postgis/trunk@15775 b70326c6-7e19-0410-871a-916f4a2858ee

postgis/postgis.sql.in

index d76b88daf29cceaf74d8d813e8804f36bf9fb0ef..390ace86575964a5444c6aa8d1bd9df49a93d8a1 100644 (file)
@@ -5870,8 +5870,10 @@ $$
                                        var_tempgeom := @extschema@.ST_ForceSFS(@extschema@.ST_Intersection(var_tempgeom, var_convhull));
                                        IF param_allow_holes THEN
                                                var_param_geom := var_tempgeom;
-                                       ELSE
+                                       ELSIF @extschema@.ST_GeometryType(var_tempgeom) = 'ST_Polygon' THEN
                                                var_param_geom := @extschema@.ST_MakePolygon(@extschema@.ST_ExteriorRing(var_tempgeom));
+                                       ELSE
+                                               var_param_geom := @extschema@.ST_ConvexHull(var_param_geom);
                                        END IF;
                                        return var_param_geom;
                                ELSIF @extschema@.ST_IsValid(var_tempgeom) THEN