1626{
1628 char *reason_str = NULL;
1630 const GEOSGeometry *g1 = NULL;
1631
1632 geom = PG_GETARG_GSERIALIZED_P(0);
1633
1635
1637 if ( g1 )
1638 {
1639 reason_str = GEOSisValidReason(g1);
1640 GEOSGeom_destroy((GEOSGeometry *)g1);
1642 result = cstring_to_text(reason_str);
1643 GEOSFree(reason_str);
1644 }
1645 else
1646 {
1648 }
1649
1650 PG_FREE_IF_COPY(geom, 0);
1651 PG_RETURN_POINTER(
result);
1652}
char result[OUT_DOUBLE_BUFFER_SIZE]
char lwgeom_geos_errmsg[LWGEOM_GEOS_ERRMSG_MAXSIZE]
void lwgeom_geos_error(const char *fmt,...)
GEOSGeometry * POSTGIS2GEOS(const GSERIALIZED *pglwgeom)
#define HANDLE_GEOS_ERROR(label)