diff --git a/libutils/include/utils/auto.h b/libutils/include/utils/auto.h index 768e77af2..12f67afdc 100644 --- a/libutils/include/utils/auto.h +++ b/libutils/include/utils/auto.h @@ -15,12 +15,14 @@ * adjacent macro. Sample usage: * * void foo(void) { - * autofree int *x = malloc(sizeof(int)); + * AUTOFREE int *x = malloc(sizeof(int)); * // no need to call free(x) * } */ -static inline void autofree_(void *p) { - void **q = (void**)p; +static inline void autofree_(void *p) +{ + void **q = (void **)p; free(*q); } + #define AUTOFREE __attribute__((cleanup(autofree_)))