summaryrefslogtreecommitdiff
path: root/libc/src/malloc.c
diff options
context:
space:
mode:
authorPixel <pixel@nobis-crew.org>2011-02-05 08:35:05 -0800
committerPixel <pixel@nobis-crew.org>2011-02-05 08:35:05 -0800
commit0044f9480cfa8d5cf0a3d84e84be25e32b588726 (patch)
treebea91e4141bb77722e95885f81c545c40ed919cf /libc/src/malloc.c
parent0736203a630b2fbc2bc3e6383e4aec9285bba184 (diff)
Making malloc / free / realloc function pointers to be able to wrap them later for thread-safe reasons.
Diffstat (limited to 'libc/src/malloc.c')
-rw-r--r--libc/src/malloc.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/libc/src/malloc.c b/libc/src/malloc.c
index 2b8a806..fb6d954 100644
--- a/libc/src/malloc.c
+++ b/libc/src/malloc.c
@@ -30,7 +30,7 @@ static heap_t * find_fit(heap_t * head, size_t size) {
return prev;
}
-void * malloc(size_t size) {
+void * base_malloc(size_t size) {
void * ptr = NULL, * heap_ptr;
heap_t * new, * prev;
@@ -103,7 +103,7 @@ void * malloc(size_t size) {
return ptr;
}
-void * realloc(void * ptr, size_t size) {
+void * base_realloc(void * ptr, size_t size) {
heap_t * prev;
void * new = NULL;
@@ -155,7 +155,7 @@ void * realloc(void * ptr, size_t size) {
return new;
}
-void free(void * ptr) {
+void base_free(void * ptr) {
heap_t * cur;
void * top;
size_t size;
@@ -200,3 +200,7 @@ void free(void * ptr) {
__attribute__((weak)) void * __builtin_new(size_t size) { return malloc(size); }
__attribute__((weak)) void __builtin_delete(void * ptr) { free(ptr); }
+
+malloc_t malloc = base_malloc;
+free_t free = base_free;
+realloc_t realloc = base_realloc;