PostGIS  2.5.0dev-r@@SVN_REVISION@@

◆ lwgeom_release()

void lwgeom_release ( LWGEOM lwgeom)

Free the containing LWGEOM and the associated BOX.

Leave the underlying geoms/points/point objects intact. Useful for functions that are stripping out subcomponents of complex objects, or building up new temporary objects on top of subcomponents.

Definition at line 459 of file lwgeom.c.

References LWGEOM::bbox, LWDEBUGF, lwerror(), lwfree(), lwtype_name(), and LWGEOM::type.

Referenced by geom_from_kml(), lwcircstring_release(), lwcollection_release(), LWGEOM_exteriorring_polygon(), LWGEOM_interiorringn_polygon(), lwline_release(), lwmline_release(), lwmpoint_release(), lwmpoly_release(), lwmpoly_to_points(), lwpoint_release(), lwpoly_release(), and lwtriangle_release().

460 {
461  if ( ! lwgeom )
462  lwerror("lwgeom_release: someone called on 0x0");
463 
464  LWDEBUGF(3, "releasing type %s", lwtype_name(lwgeom->type));
465 
466  /* Drop bounding box (always a copy) */
467  if ( lwgeom->bbox )
468  {
469  LWDEBUGF(3, "lwgeom_release: releasing bbox. %p", lwgeom->bbox);
470  lwfree(lwgeom->bbox);
471  }
472  lwfree(lwgeom);
473 
474 }
GBOX * bbox
Definition: liblwgeom.h:400
void lwfree(void *mem)
Definition: lwutil.c:244
const char * lwtype_name(uint8_t type)
Return the type name string associated with a type number (e.g.
Definition: lwutil.c:218
uint8_t type
Definition: liblwgeom.h:398
#define LWDEBUGF(level, msg,...)
Definition: lwgeom_log.h:88
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
Definition: lwutil.c:190
Here is the call graph for this function:
Here is the caller graph for this function: