diff options
author | Miles Bader <miles@lsi.nec.co.jp> | 2002-09-04 02:11:08 +0000 |
---|---|---|
committer | Miles Bader <miles@lsi.nec.co.jp> | 2002-09-04 02:11:08 +0000 |
commit | 66dc2a8bbce9b31ca6d45fbe949e7d8d7b2f024c (patch) | |
tree | 759c94fa67b5c63a20b61953308d09e9233afeb3 | |
parent | 4d5bd6060d182c4987b679367c201eaf94e91812 (diff) |
(free):
Update debug statement.
Update to use __heap_delete and __heap_is_empty.
-rw-r--r-- | libc/stdlib/malloc/free.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/libc/stdlib/malloc/free.c b/libc/stdlib/malloc/free.c index ac842fc67..c8c687964 100644 --- a/libc/stdlib/malloc/free.c +++ b/libc/stdlib/malloc/free.c @@ -32,12 +32,12 @@ free (void *mem) /* Normal free. */ + MALLOC_DEBUG ("free: 0x%lx (base = 0x%lx, total_size = %d)\n", + (long)mem, (long)MALLOC_BASE (mem), MALLOC_SIZE (mem)); + size = MALLOC_SIZE (mem); mem = MALLOC_BASE (mem); - MALLOC_DEBUG ("free: 0x%lx (base = 0x%lx, total_size = %d)\n", - (long)MALLOC_ADDR (mem), (long)mem, size); - __malloc_lock (); /* Put MEM back in the heap, and get the free-area it was placed in. */ @@ -84,9 +84,9 @@ free (void *mem) start, end, end - start); /* Remove FA from the heap. */ - __heap_unlink_free_area (heap, fa); + __heap_delete (heap, fa); - if (!fa->next && !fa->prev) + if (__heap_is_empty (heap)) /* We want to avoid the heap from losing all memory, so reserve a bit. This test is only a heuristic -- the existance of another free area, even if it's smaller than |