In mutt/memory.c, what is point of casting ptr from (void *) to (void **)? Any ancient C technique here?
void mutt_mem_free(void *ptr) { if (!ptr) return; void **p = (void **) ptr; if (*p) { free(*p); *p = 0; } } Yubin
In mutt/memory.c, what is point of casting ptr from (void *) to (void **)? Any ancient C technique here?
void mutt_mem_free(void *ptr) { if (!ptr) return; void **p = (void **) ptr; if (*p) { free(*p); *p = 0; } } Yubin