diff options
author | 2023-02-25 18:21:44 -0800 | |
---|---|---|
committer | 2023-02-25 18:23:01 -0800 | |
commit | 8ba65a4f0bbd38b5c6a677d93d1fa13d0042bb35 (patch) | |
tree | a46cd8cc292091e9c52e26d7e00dc3c737380e95 | |
parent | 4149b9554325106cab4a0057e192cc3c1986d503 (diff) | |
download | bun-8ba65a4f0bbd38b5c6a677d93d1fa13d0042bb35.tar.gz bun-8ba65a4f0bbd38b5c6a677d93d1fa13d0042bb35.tar.zst bun-8ba65a4f0bbd38b5c6a677d93d1fa13d0042bb35.zip |
Fixes #2194 (most likely)
-rw-r--r-- | src/boringssl.zig | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/src/boringssl.zig b/src/boringssl.zig index a6e767428..de5277a98 100644 --- a/src/boringssl.zig +++ b/src/boringssl.zig @@ -15,11 +15,8 @@ pub fn load() void { boring.OpenSSL_add_all_algorithms(); if (!builtin.is_test) { - comptime { - @export(bun.Mimalloc.mi_malloc, .{ .name = "OPENSSL_memory_alloc", .linkage = .Strong }); - @export(bun.Mimalloc.mi_usable_size, .{ .name = "OPENSSL_memory_get_size", .linkage = .Strong }); - } - + std.mem.doNotOptimizeAway(&OPENSSL_memory_alloc); + std.mem.doNotOptimizeAway(&OPENSSL_memory_get_size); std.mem.doNotOptimizeAway(&OPENSSL_memory_free); } } @@ -62,9 +59,9 @@ pub fn initClient() *boring.SSL { // into the process, including pthreads locks. Failing to meet these constraints // may result in deadlocks, crashes, or memory corruption. -// export fn OPENSSL_memory_alloc(size: usize) ?*anyopaque { -// return -// } +export fn OPENSSL_memory_alloc(size: usize) ?*anyopaque { + return bun.Mimalloc.mi_malloc(size); +} // BoringSSL always expects memory to be zero'd export fn OPENSSL_memory_free(ptr: *anyopaque) void { @@ -72,9 +69,9 @@ export fn OPENSSL_memory_free(ptr: *anyopaque) void { bun.Mimalloc.mi_free(ptr); } -// export fn OPENSSL_memory_get_size(ptr: ?*const anyopaque) usize { -// return bun.Mimalloc.mi_usable_size(ptr); -// } +export fn OPENSSL_memory_get_size(ptr: ?*const anyopaque) usize { + return bun.Mimalloc.mi_usable_size(ptr); +} test "load" { load(); |