about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/mallochook.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/mallochook.c b/src/mallochook.c
index 08db1429..a273f25d 100644
--- a/src/mallochook.c
+++ b/src/mallochook.c
@@ -236,19 +236,24 @@ EXPORT void* realloc(void* p, size_t s)
     return box_realloc(p, s);
 }
 
-EXPORT void* aligned_alloc(size_t align, size_t size)
+EXPORT void* memalign(size_t align, size_t size)
 {
     if(malloc_hack_2 && ALLOC && real_aligned_alloc) {
         return (void*)RunFunctionFmt(real_aligned_alloc, "LL", align, size);
     }
+    if(box64_is32bits && align==4)
+        align = sizeof(void*);
     return box_memalign(align, size);
 }
 
-EXPORT void* memalign(size_t align, size_t size)
+EXPORT void* aligned_alloc(size_t align, size_t size)
 {
     if(malloc_hack_2 && ALLOC && real_aligned_alloc) {
         return (void*)RunFunctionFmt(real_aligned_alloc, "LL", align, size);
     }
+    if(box64_is32bits && align==4) {
+        return memalign(align, size);
+    }
     return box_memalign(align, size);
 }