summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaan <daanl@outlook.com>2022-04-07 16:12:30 -0700
committerDaan <daanl@outlook.com>2022-04-07 16:12:30 -0700
commit2a4a3dfa23dbddc1bed7e61d567b9ca4d9ffba87 (patch)
tree5baa0fa3f5a1a3bd8c538d35eeea4f22d78885e7 /src
parent0075a81879b670a87b56e078bad942671331a4bb (diff)
parent25ecec3c3b77a85f1344bacb6c9538c555b49e12 (diff)
Merge branch 'dev' into dev-slice
Diffstat (limited to 'src')
-rw-r--r--src/alloc-override-osx.c4
-rw-r--r--src/alloc-override.c22
2 files changed, 14 insertions, 12 deletions
diff --git a/src/alloc-override-osx.c b/src/alloc-override-osx.c
index 9c331ca..41d0a38 100644
--- a/src/alloc-override-osx.c
+++ b/src/alloc-override-osx.c
@@ -64,7 +64,7 @@ static void* zone_valloc(malloc_zone_t* zone, size_t size) {
static void zone_free(malloc_zone_t* zone, void* p) {
MI_UNUSED(zone);
- mi_free(p);
+ mi_cfree(p);
}
static void* zone_realloc(malloc_zone_t* zone, void* p, size_t newsize) {
@@ -373,7 +373,7 @@ __attribute__((used)) static const struct mi_interpose_s _mi_zone_interposes[]
MI_INTERPOSE_MI(_malloc_fork_child),
MI_INTERPOSE_MI(_malloc_fork_parent),
MI_INTERPOSE_MI(_malloc_fork_prepare),
-
+
MI_INTERPOSE_ZONE(zone_batch_free),
MI_INTERPOSE_ZONE(zone_batch_malloc),
MI_INTERPOSE_ZONE(zone_calloc),
diff --git a/src/alloc-override.c b/src/alloc-override.c
index 0c9ece9..12e9e0d 100644
--- a/src/alloc-override.c
+++ b/src/alloc-override.c
@@ -94,15 +94,18 @@ typedef struct mi_nothrow_s { int _tag; } mi_nothrow_t;
#ifdef __cplusplus
extern "C" {
- void _ZdlPv(void* p); // delete
- void _ZdaPv(void* p); // delete[]
- void _ZdlPvm(void* p, size_t n); // delete
- void _ZdaPvm(void* p, size_t n); // delete[]
- void* _Znwm(size_t n); // new
- void* _Znam(size_t n); // new[]
- void* _ZnwmRKSt9nothrow_t(size_t n, mi_nothrow_t tag); // new nothrow
- void* _ZnamRKSt9nothrow_t(size_t n, mi_nothrow_t tag); // new[] nothrow
- }
+ #endif
+ void _ZdlPv(void* p); // delete
+ void _ZdaPv(void* p); // delete[]
+ void _ZdlPvm(void* p, size_t n); // delete
+ void _ZdaPvm(void* p, size_t n); // delete[]
+ void* _Znwm(size_t n); // new
+ void* _Znam(size_t n); // new[]
+ void* _ZnwmRKSt9nothrow_t(size_t n, mi_nothrow_t tag); // new nothrow
+ void* _ZnamRKSt9nothrow_t(size_t n, mi_nothrow_t tag); // new[] nothrow
+ #ifdef __cplusplus
+ }
+ #endif
__attribute__((used)) static struct mi_interpose_s _mi_cxx_interposes[] __attribute__((section("__DATA, __interpose"))) =
{
MI_INTERPOSE_FUN(_ZdlPv,mi_free),
@@ -114,7 +117,6 @@ typedef struct mi_nothrow_s { int _tag; } mi_nothrow_t;
MI_INTERPOSE_FUN(_ZnwmRKSt9nothrow_t,mi_new_nothrow),
MI_INTERPOSE_FUN(_ZnamRKSt9nothrow_t,mi_new_nothrow),
};
- #endif // __cplusplus
#elif defined(_MSC_VER)
// cannot override malloc unless using a dll.