diff options
Diffstat (limited to 'src/malloc/malloc.c')
-rw-r--r-- | src/malloc/malloc.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/src/malloc/malloc.c b/src/malloc/malloc.c index 5a56e0c5..da775921 100644 --- a/src/malloc/malloc.c +++ b/src/malloc/malloc.c @@ -368,8 +368,6 @@ void *malloc(size_t n) return CHUNK_TO_MEM(c); } -weak_alias(malloc, __internal_malloc); - static size_t mal0_clear(char *p, size_t pagesz, size_t n) { #ifdef __GNUC__ @@ -396,13 +394,10 @@ void *calloc(size_t m, size_t n) } n *= m; void *p = malloc(n); - if (!p) return p; - if (malloc == __internal_malloc) { - if (IS_MMAPPED(MEM_TO_CHUNK(p))) - return p; - if (n >= PAGE_SIZE) - n = mal0_clear(p, PAGE_SIZE, n); - } + if (!p || IS_MMAPPED(MEM_TO_CHUNK(p))) + return p; + if (n >= PAGE_SIZE) + n = mal0_clear(p, PAGE_SIZE, n); return memset(p, 0, n); } @@ -568,8 +563,6 @@ void free(void *p) bin_chunk(self); } -weak_alias(free, __internal_free); - void __malloc_donate(char *start, char *end) { size_t align_start_up = (SIZE_ALIGN-1) & (-(uintptr_t)start - OVERHEAD); |