int32 typmod = PG_GETARG_INT32(0);
int32 dims = 2;
if ( typmod < 0 )
- PG_RETURN_INT32(dims);
+ PG_RETURN_NULL(); /* unconstrained */
if ( TYPMOD_GET_Z(typmod) )
dims++;
if ( TYPMOD_GET_M(typmod) )
n.nspname::varchar(256) AS f_table_schema,
c.relname::varchar(256) AS f_table_name,
a.attname::varchar(256) AS f_geometry_column,
- COALESCE(NULLIF(postgis_typmod_dims(a.atttypmod),2),
+ COALESCE(postgis_typmod_dims(a.atttypmod),
postgis_constraint_dims(n.nspname, c.relname, a.attname),
- 2) AS coord_dimension,
+ 2) AS coord_dimension, -- should it be 0 instead ?
COALESCE(NULLIF(postgis_typmod_srid(a.atttypmod),0),
postgis_constraint_srid(n.nspname, c.relname, a.attname),
0) AS srid,