about summary refs log tree commit diff stats
path: root/src/librarian
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2024-09-04 11:00:43 +0200
committerptitSeb <sebastien.chev@gmail.com>2024-09-04 11:00:43 +0200
commitee7b10f064326a657c13821d5f07cca41a45d4ae (patch)
tree2a23b841dfb31ede19da428ec36bd99a8e56832c /src/librarian
parentc1ad6b5829af34e5ff93d5f89b08a007b1a88f2e (diff)
downloadbox64-ee7b10f064326a657c13821d5f07cca41a45d4ae.tar.gz
box64-ee7b10f064326a657c13821d5f07cca41a45d4ae.zip
[BOX32] Small improvments on memory management
Diffstat (limited to 'src/librarian')
-rw-r--r--src/librarian/librarian.c4
-rw-r--r--src/librarian/library.c36
2 files changed, 20 insertions, 20 deletions
diff --git a/src/librarian/librarian.c b/src/librarian/librarian.c
index ddeb063b..aee6acf0 100644
--- a/src/librarian/librarian.c
+++ b/src/librarian/librarian.c
@@ -511,7 +511,7 @@ int GetGlobalSymbolStartEnd(lib_t *maplib, const char* name, uintptr_t* start, u
     if(GetGlobalSymbolStartEnd_internal(maplib, name, start, end, self, &version, &vername, &veropt, elfsym)) {
         if(start && end && *end==*start) {  // object is of 0 sized, try to see an "_END" object of null size
             uintptr_t start2, end2;
-            char* buff = (char*)malloc(strlen(name) + strlen("_END") + 1);
+            char* buff = (char*)box_malloc(strlen(name) + strlen("_END") + 1);
             strcpy(buff, name);
             strcat(buff, "_END");
             if(GetGlobalSymbolStartEnd_internal(maplib, buff, &start2, &end2, self, &version, &vername, &veropt, elfsym)) {
@@ -584,7 +584,7 @@ int GetGlobalWeakSymbolStartEnd(lib_t *maplib, const char* name, uintptr_t* star
     if(GetGlobalWeakSymbolStartEnd_internal(maplib, name, start, end, self, &version, &vername, &veropt, elfsym)) {
         if(start && end && *end==*start) {  // object is of 0 sized, try to see an "_END" object of null size
             uintptr_t start2, end2;
-            char* buff = (char*)malloc(strlen(name) + strlen("_END") + 1);
+            char* buff = (char*)box_malloc(strlen(name) + strlen("_END") + 1);
             strcpy(buff, name);
             strcat(buff, "_END");
             if(GetGlobalWeakSymbolStartEnd_internal(maplib, buff, &start2, &end2, self, &version, &vername, &veropt, elfsym)) {
diff --git a/src/librarian/library.c b/src/librarian/library.c
index e4ab45e5..e21e648c 100644
--- a/src/librarian/library.c
+++ b/src/librarian/library.c
@@ -452,7 +452,7 @@ library_t *NewLibrary(const char* path, box64context_t* context, elfheader_t* ve
     printf_dump(LOG_DEBUG, "Trying to load \"%s\"\n", path);
     //library_t *lib = (library_t*)box_calloc(1, sizeof(library_t));
     if(cur_lib==lib_cap) {
-        lib_brick_t *new_brick = calloc(1, sizeof(lib_brick_t));
+        lib_brick_t *new_brick = box_calloc(1, sizeof(lib_brick_t));
         if(!lib_head)
             cur_brick = lib_head = new_brick;
         else {
@@ -1211,23 +1211,23 @@ void AddMainElfToLinkmap(elfheader_t* elf)
 
 needed_libs_t* new_neededlib(int n)
 {
-    needed_libs_t* ret = (needed_libs_t*)calloc(1, sizeof(needed_libs_t));
+    needed_libs_t* ret = (needed_libs_t*)box_calloc(1, sizeof(needed_libs_t));
     ret->cap = ret->size = n;
     ret->init_size = n;
-    ret->libs = (library_t**)calloc(n, sizeof(library_t*));
-    ret->names = (char**)calloc(n, sizeof(char*));
+    ret->libs = (library_t**)box_calloc(n, sizeof(library_t*));
+    ret->names = (char**)box_calloc(n, sizeof(char*));
     return ret;
 }
 void free_neededlib(needed_libs_t* needed)
 {
     if(!needed)
         return;
-    free(needed->libs);
-    free(needed->names);
+    box_free(needed->libs);
+    box_free(needed->names);
     needed->libs = NULL;
     needed->names = NULL;
     needed->cap = needed->size = 0;
-    free(needed);
+    box_free(needed);
 }
 void add1_neededlib(needed_libs_t* needed)
 {
@@ -1236,8 +1236,8 @@ void add1_neededlib(needed_libs_t* needed)
     if(needed->size+1<=needed->cap)
         return;
     needed->cap = needed->size+1;
-    needed->libs = (library_t**)realloc(needed->libs, needed->cap*sizeof(library_t*));
-    needed->names = (char**)realloc(needed->names, needed->cap*sizeof(char*));
+    needed->libs = (library_t**)box_realloc(needed->libs, needed->cap*sizeof(library_t*));
+    needed->names = (char**)box_realloc(needed->names, needed->cap*sizeof(char*));
     needed->size++;
     needed->init_size++;
 }
@@ -1252,8 +1252,8 @@ void add1lib_neededlib(needed_libs_t* needed, library_t* lib, const char* name)
     // add it
     if(needed->size==needed->cap) {
         needed->cap = needed->size+1;
-        needed->libs = (library_t**)realloc(needed->libs, needed->cap*sizeof(library_t*));
-        needed->names = (char**)realloc(needed->names, needed->cap*sizeof(char*));
+        needed->libs = (library_t**)box_realloc(needed->libs, needed->cap*sizeof(library_t*));
+        needed->names = (char**)box_realloc(needed->names, needed->cap*sizeof(char*));
     }
     needed->libs[needed->size] = lib;
     needed->names[needed->size] = (char*)name;
@@ -1271,8 +1271,8 @@ void add1lib_neededlib_name(needed_libs_t* needed, library_t* lib, const char* n
     // add it
     if(needed->size==needed->cap) {
         needed->cap = needed->size+1;
-        needed->libs = (library_t**)realloc(needed->libs, needed->cap*sizeof(library_t*));
-        needed->names = (char**)realloc(needed->names, needed->cap*sizeof(char*));
+        needed->libs = (library_t**)box_realloc(needed->libs, needed->cap*sizeof(library_t*));
+        needed->names = (char**)box_realloc(needed->names, needed->cap*sizeof(char*));
     }
     needed->libs[needed->size] = lib;
     needed->names[needed->size] = (char*)name;
@@ -1290,8 +1290,8 @@ void add1libref_neededlib(needed_libs_t* needed, library_t* lib)
     // add it
     if(needed->size==needed->cap) {
         needed->cap = needed->size+4;
-        needed->libs = (library_t**)realloc(needed->libs, needed->cap*sizeof(library_t*));
-        needed->names = (char**)realloc(needed->names, needed->cap*sizeof(char*));
+        needed->libs = (library_t**)box_realloc(needed->libs, needed->cap*sizeof(library_t*));
+        needed->names = (char**)box_realloc(needed->names, needed->cap*sizeof(char*));
     }
     needed->libs[needed->size] = lib;
     needed->names[needed->size] = (char*)lib->name;
@@ -1302,12 +1302,12 @@ needed_libs_t* copy_neededlib(needed_libs_t* needed)
 {
     if(!needed)
         return NULL;
-    needed_libs_t* ret = (needed_libs_t*)calloc(1, sizeof(needed_libs_t));
+    needed_libs_t* ret = (needed_libs_t*)box_calloc(1, sizeof(needed_libs_t));
     ret->cap = needed->cap;
     ret->size = needed->size;
     ret->init_size = needed->init_size;
-    ret->libs = (library_t**)calloc(ret->cap, sizeof(library_t*));
-    ret->names = (char**)calloc(ret->cap, sizeof(char*));
+    ret->libs = (library_t**)box_calloc(ret->cap, sizeof(library_t*));
+    ret->names = (char**)box_calloc(ret->cap, sizeof(char*));
     memcpy(ret->libs, needed->libs, ret->size*sizeof(library_t*));
     memcpy(ret->names, needed->names, ret->size*sizeof(char*));
     return ret;