PostGIS  3.7.0dev-r@@SVN_REVISION@@

◆ itree_free()

void itree_free ( IntervalTree itree)

Definition at line 28 of file intervaltree.c.

29 {
30  if (itree->nodes) lwfree(itree->nodes);
31  if (itree->ringCounts) lwfree(itree->ringCounts);
32  if (itree->indexArrays)
33  {
34  for (uint32_t i = 0; i < itree->numIndexes; i++)
35  {
36  if (itree->indexArrays[i])
37  ptarray_free(itree->indexArrays[i]);
38  }
39  }
40  if (itree->indexes) lwfree(itree->indexes);
41  if (itree->indexArrays) lwfree(itree->indexArrays);
42  lwfree(itree);
43 }
void lwfree(void *mem)
Definition: lwutil.c:248
void ptarray_free(POINTARRAY *pa)
Definition: ptarray.c:327
struct IntervalTreeNode * nodes
Definition: intervaltree.h:58
struct IntervalTreeNode ** indexes
Definition: intervaltree.h:59
uint32_t * ringCounts
Definition: intervaltree.h:62
POINTARRAY ** indexArrays
Definition: intervaltree.h:60
uint32_t numIndexes
Definition: intervaltree.h:61

References IntervalTree::indexArrays, IntervalTree::indexes, lwfree(), IntervalTree::nodes, IntervalTree::numIndexes, ptarray_free(), and IntervalTree::ringCounts.

Referenced by IntervalTreeBuilder(), IntervalTreeFreer(), and test_itree_once().

Here is the call graph for this function:
Here is the caller graph for this function: