diff --git a/src/common/mem_utils/mem_utils.c b/src/common/mem_utils/mem_utils.c index 9b476e1..9630697 100644 --- a/src/common/mem_utils/mem_utils.c +++ b/src/common/mem_utils/mem_utils.c @@ -39,7 +39,7 @@ void *wapp_mem_util_align_forward(void *ptr, u64 alignment) { } void *wapp_mem_util_alloc(void *addr, u64 size, MemAccess access, MemAllocFlags flags, MemInitType type) { - void *output = mem_util_allocate(addr, size, access, flags); + void *output = mem_util_allocate(addr, size, access, flags, type); if (type == WAPP_MEM_INIT_INITIALISED) { memset(output, 0, size); diff --git a/src/common/mem_utils/mem_utils.h b/src/common/mem_utils/mem_utils.h index 3757a29..edda2a2 100644 --- a/src/common/mem_utils/mem_utils.h +++ b/src/common/mem_utils/mem_utils.h @@ -22,7 +22,7 @@ void *wapp_mem_util_align_forward(void *ptr, u64 alignment); void *wapp_mem_util_alloc(void *addr, u64 size, MemAccess access, MemAllocFlags flags, MemInitType type); void wapp_mem_util_free(void *ptr, u64 size); -external void *mem_util_allocate(void *addr, u64 size, MemAccess access, MemAllocFlags flags); +external void *mem_util_allocate(void *addr, u64 size, MemAccess access, MemAllocFlags flags, MemInitType type); external void mem_util_free(void *ptr, u64 size); #ifdef __cplusplus diff --git a/src/common/mem_utils/posix/mem_utils_posix.c b/src/common/mem_utils/posix/mem_utils_posix.c index 56c3d30..e1d0706 100644 --- a/src/common/mem_utils/posix/mem_utils_posix.c +++ b/src/common/mem_utils/posix/mem_utils_posix.c @@ -16,7 +16,7 @@ internal const i32 access_types[] = { [WAPP_MEM_ACCESS_READ_WRITE_EXEC] = PROT_READ | PROT_WRITE | PROT_EXEC, }; -void *mem_util_allocate(void *addr, u64 size, MemAccess access, MemAllocFlags flags) { +void *mem_util_allocate(void *addr, u64 size, MemAccess access, MemAllocFlags flags, MemInitType type) { i32 alloc_flags = flags | MAP_ANON | MAP_PRIVATE; #if defined(WAPP_PLATFORM_LINUX) || defined(WAPP_PLATFORM_GNU) || defined(WAPP_PLATFORM_NET_BSD) diff --git a/src/common/mem_utils/win/mem_utils_win.c b/src/common/mem_utils/win/mem_utils_win.c index bf0f0e5..275e953 100644 --- a/src/common/mem_utils/win/mem_utils_win.c +++ b/src/common/mem_utils/win/mem_utils_win.c @@ -19,7 +19,7 @@ internal const i32 access_types[] = { [WAPP_MEM_ACCESS_READ_WRITE_EXEC] = PAGE_EXECUTE_READWRITE, }; -void *mem_util_allocate(void *addr, u64 size, MemAccess access, MemAllocFlags flags) { +void *mem_util_allocate(void *addr, u64 size, MemAccess access, MemAllocFlags flags, MemInitType type) { // Ensure memory is committed if it's meant to be initialised if (type == WAPP_MEM_INIT_INITIALISED) { flags |= WAPP_MEM_ALLOC_COMMIT;