PostGIS  2.4.9dev-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 421 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().

422 {
423  if ( ! lwgeom )
424  lwerror("lwgeom_release: someone called on 0x0");
425 
426  LWDEBUGF(3, "releasing type %s", lwtype_name(lwgeom->type));
427 
428  /* Drop bounding box (always a copy) */
429  if ( lwgeom->bbox )
430  {
431  LWDEBUGF(3, "lwgeom_release: releasing bbox. %p", lwgeom->bbox);
432  lwfree(lwgeom->bbox);
433  }
434  lwfree(lwgeom);
435 
436 }
GBOX * bbox
Definition: liblwgeom.h:398
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:396
#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: