PostGIS  2.2.8dev-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 372 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(), lwpoint_release(), lwpoly_release(), and lwtriangle_release().

373 {
374  if ( ! lwgeom )
375  lwerror("lwgeom_release: someone called on 0x0");
377  LWDEBUGF(3, "releasing type %s", lwtype_name(lwgeom->type));
379  /* Drop bounding box (always a copy) */
380  if ( lwgeom->bbox )
381  {
382  LWDEBUGF(3, "lwgeom_release: releasing bbox. %p", lwgeom->bbox);
383  lwfree(lwgeom->bbox);
384  }
385  lwfree(lwgeom);
387 }
GBOX * bbox
Definition: liblwgeom.h:382
void lwfree(void *mem)
Definition: lwutil.c:214
const char * lwtype_name(uint8_t type)
Return the type name string associated with a type number (e.g.
Definition: lwutil.c:188
uint8_t type
Definition: liblwgeom.h:380
#define LWDEBUGF(level, msg,...)
Definition: lwgeom_log.h:55
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
Definition: lwutil.c:74
Here is the call graph for this function:
Here is the caller graph for this function: