__mmalloc_current_heap = new_heap;
}
-#ifdef MMALLOC_WANT_OVERIDE_LEGACY
+#ifdef MMALLOC_WANT_OVERRIDE_LEGACY
void *malloc(size_t n)
{
xbt_mheap_t mdp = __mmalloc_current_heap ?: (xbt_mheap_t) mmalloc_preinit();
void free(void *p)
{
- xbt_mheap_t mdp = __mmalloc_current_heap ?: (xbt_mheap_t) mmalloc_preinit();
+ if (p != NULL) {
+ xbt_mheap_t mdp = __mmalloc_current_heap ?: (xbt_mheap_t) mmalloc_preinit();
- LOCK(mdp);
- mfree(mdp, p);
- UNLOCK(mdp);
+ LOCK(mdp);
+ mfree(mdp, p);
+ UNLOCK(mdp);
+ }
}
#endif