From bf7beb500cfb32d247df441d59749593a634818a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Duval?= Date: Thu, 16 Aug 2007 09:19:56 +0000 Subject: [PATCH] added posix_memalign() git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21974 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- headers/posix/stdlib.h | 1 + src/system/libroot/posix/malloc/wrapper.cpp | 12 ++++++++++++ 2 files changed, 13 insertions(+) diff --git a/headers/posix/stdlib.h b/headers/posix/stdlib.h index 3ffec9578a..05f96b6c14 100644 --- a/headers/posix/stdlib.h +++ b/headers/posix/stdlib.h @@ -49,6 +49,7 @@ extern void *calloc(size_t nmemb, size_t size); extern void free(void *pointer); extern void *malloc(size_t size); extern void *realloc(void * ptr, size_t size); +extern int posix_memalign(void **memptr, size_t alignment, size_t size); /* process termination */ extern void abort(void); diff --git a/src/system/libroot/posix/malloc/wrapper.cpp b/src/system/libroot/posix/malloc/wrapper.cpp index ca2702dc20..7ef6393faf 100644 --- a/src/system/libroot/posix/malloc/wrapper.cpp +++ b/src/system/libroot/posix/malloc/wrapper.cpp @@ -274,6 +274,18 @@ memalign(size_t alignment, size_t size) } +extern "C" int +posix_memalign(void **memptr, size_t alignment, size_t size) +{ + if (!memptr) + return EINVAL; + *memptr = memalign(alignment, size); + if (memptr == NULL) + return ENOMEM; + return 0; +} + + extern "C" void * valloc(size_t size) {