summary refs log tree commit diff
path: root/src/libstddjb/genalloc_deepfree.c
blob: 17cdf3aed12532e45c8e703db806ae4bbd89506b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
/* ISC license. */

#include <skalibs/stralloc.h>
#include <skalibs/genalloc.h>

void genalloc_deepfree_size (genalloc *g, free_func_ref f, size_t size)
{
  size_t len = g->len / size ;
  size_t i = 0 ;
  for (; i < len ; i++) (*f)(g->s + i * size) ;
  stralloc_free(g) ;
}