Added HnswFreeNeighbors function [skip ci]

This commit is contained in:
Andrew Kane
2023-09-12 19:49:31 -07:00
parent 643eacd9dc
commit 334614b7f7

View File

@@ -143,6 +143,17 @@ HnswInitNeighbors(HnswElement element, int m)
}
}
/*
* Free neighbors
*/
static void
HnswFreeNeighbors(HnswElement element)
{
for (int lc = 0; lc <= element->level; lc++)
pfree(element->neighbors[lc].items);
pfree(element->neighbors);
}
/*
* Allocate an element
*/
@@ -175,9 +186,7 @@ void
HnswFreeElement(HnswElement element)
{
list_free_deep(element->heaptids);
for (int lc = 0; lc <= element->level; lc++)
pfree(element->neighbors[lc].items);
pfree(element->neighbors);
HnswFreeNeighbors(element);
pfree(element->vec);
pfree(element);
}