From 37da2899f40661e3e9631e497da8dc59b971cbd0 Mon Sep 17 00:00:00 2001 From: "Charles.Forsyth" Date: Fri, 22 Dec 2006 17:07:39 +0000 Subject: 20060303a --- lib9/sbrk-posix.c | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 lib9/sbrk-posix.c (limited to 'lib9/sbrk-posix.c') diff --git a/lib9/sbrk-posix.c b/lib9/sbrk-posix.c new file mode 100644 index 00000000..c21cd2ff --- /dev/null +++ b/lib9/sbrk-posix.c @@ -0,0 +1,48 @@ +#ifdef __APPLE_CC__ /* look for a better way */ +#include "lib9.h" +#undef _POSIX_C_SOURCE +#undef getwd + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include +#include + +#include + +#include + +#include + + +__typeof__(sbrk(0)) +sbrk(int size) +{ + void *brk; + kern_return_t err; + + err = vm_allocate( (vm_map_t) mach_task_self(), + (vm_address_t *)&brk, + size, + VM_FLAGS_ANYWHERE); + if (err != KERN_SUCCESS) + brk = (void*)-1; + + return brk; +} +#else +/* dummy function for everyone else, in case its ar complains about empty files */ +void __fakesbrk(void){} +#endif -- cgit v1.2.3