mirror of
https://git.osgeo.org/gitea/postgis/postgis
synced 2024-10-25 17:42:38 +00:00
ST_MakeValid: Early fail if an unsupported type is given
git-svn-id: http://svn.osgeo.org/postgis/trunk@5604 b70326c6-7e19-0410-871a-916f4a2858ee
This commit is contained in:
parent
8838ea7328
commit
b8cd10bfca
|
@ -994,6 +994,21 @@ Datum ST_MakeValid(PG_FUNCTION_ARGS)
|
|||
in = (PG_LWGEOM *)PG_DETOAST_DATUM(PG_GETARG_DATUM(0));
|
||||
lwgeom_in = lwgeom_deserialize(SERIALIZED_FORM(in));
|
||||
|
||||
switch ( TYPE_GETTYPE(lwgeom_in->type) )
|
||||
{
|
||||
case GEOS_LINESTRING:
|
||||
case GEOS_POLYGON:
|
||||
case GEOS_MULTILINESTRING:
|
||||
case GEOS_MULTIPOLYGON:
|
||||
break;
|
||||
|
||||
default:
|
||||
lwerror("ST_MakeValid: unsupported geometry type %s",
|
||||
lwtype_name(TYPE_GETTYPE(lwgeom_in->type)));
|
||||
PG_RETURN_NULL();
|
||||
break;
|
||||
}
|
||||
|
||||
lwgeom_out = lwgeom_make_valid(lwgeom_in);
|
||||
if ( ! lwgeom_out ) {
|
||||
PG_FREE_IF_COPY(in, 0);
|
||||
|
|
Loading…
Reference in a new issue