#include "mem.h" #include #include #include #include "err.h" #include "log.h" void *xmalloc(size_t size) { void *rtn = malloc(size); if (!rtn) { die("Out of memory"); } return rtn; } void *xrealloc(void *p, size_t size) { void *pmem = realloc(p, size); if (!pmem) free(p); return pmem; } void free_pointer_array(void **array, size_t len) { if (!array) { log_write(LOG_WARN, "free_poiner_array: array is NULL"); return; } for (size_t i = 0; i < len; i++) { if (array[i]) { free(array[i]); } } free(array); }