From 64585c6c44f0c5ffb4dc4c60f43b29f8ce57cbe2 Mon Sep 17 00:00:00 2001 From: Sandro Santilli Date: Wed, 19 Oct 2005 13:11:41 +0000 Subject: [PATCH] Handled some more errors. git-svn-id: http://svn.osgeo.org/postgis/trunk@1974 b70326c6-7e19-0410-871a-916f4a2858ee --- lwgeom/lwgeom_geos_c.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/lwgeom/lwgeom_geos_c.c b/lwgeom/lwgeom_geos_c.c index eb6dc4841..f24d71ccc 100644 --- a/lwgeom/lwgeom_geos_c.c +++ b/lwgeom/lwgeom_geos_c.c @@ -2158,23 +2158,22 @@ GEOS2POSTGIS(GEOSGeom geom, char want3d) size_t size; char *wkb; PG_LWGEOM *pglwgeom, *ret; + int SRID; if ( want3d ) GEOS_setWKBOutputDims(3); else GEOS_setWKBOutputDims(2); wkb = GEOSGeomToWKB_buf(geom, &size); + if ( ! wkb ) + { + lwerror("GEOS failed to export WKB"); + } pglwgeom = pglwgeom_from_ewkb(wkb, size); - if ( ! pglwgeom ) { - lwerror("GEOS2POSTGIS: lwgeom_from_geometry returned NULL"); - return NULL; + lwerror("GEOS2POSTGIS: lwgeom_from_ewkb returned NULL"); } -#ifdef PGIS_DEBUG_GEOS2POSTGIS - lwnotice("GEOS2POSTGIS: lwgeom_from_geometry returned a %s", lwgeom_summary(lwgeom, 0)); -#endif - if ( is_worth_caching_pglwgeom_bbox(pglwgeom) ) { ret = (PG_LWGEOM *)DatumGetPointer(DirectFunctionCall1( @@ -2213,14 +2212,18 @@ POSTGIS2GEOS(PG_LWGEOM *pglwgeom) GEOSGeom geom; wkb = pglwgeom_to_ewkb(pglwgeom, getMachineEndian(), &size); + if ( ! wkb ) + { + lwerror("Postgis failed to export EWKB %s:%d", __FILE__, __LINE__); + } geom = GEOSGeomFromWKB_buf(wkb, size); lwfree(wkb); if ( ! geom ) { lwerror("POSTGIS2GEOS conversion failed"); } - wkb = GEOSGeomToWKT(geom); #ifdef PGIS_DEBUG_CONVERTER + wkb = GEOSGeomToWKT(geom); lwnotice("GEOS geom: %s", wkb); #endif -- 2.49.0