diff options
Diffstat (limited to 'lang/erlang/patches/patch-ac')
-rw-r--r-- | lang/erlang/patches/patch-ac | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/lang/erlang/patches/patch-ac b/lang/erlang/patches/patch-ac new file mode 100644 index 00000000000..cf4166489f3 --- /dev/null +++ b/lang/erlang/patches/patch-ac @@ -0,0 +1,23 @@ +$NetBSD: patch-ac,v 1.5 2008/02/13 11:09:01 tnn Exp $ + +--- erts/emulator/sys/common/erl_mseg.c.orig 2007-11-26 19:59:24.000000000 +0100 ++++ erts/emulator/sys/common/erl_mseg.c +@@ -369,10 +369,18 @@ mseg_recreate(void *old_seg, Uint old_si + #if defined(ERTS_MSEG_FAKE_SEGMENTS) + new_seg = erts_sys_realloc(ERTS_ALC_N_INVALID, NULL, old_seg, new_size); + #elif HAVE_MREMAP ++#if defined(__NetBSD__) ++ new_seg = (void *) mremap((void *) old_seg, ++ (size_t) old_size, ++ NULL, ++ (size_t) new_size, ++ 0); ++#else + new_seg = (void *) mremap((void *) old_seg, + (size_t) old_size, + (size_t) new_size, + MREMAP_MAYMOVE); ++#endif + if (new_seg == (void *) MAP_FAILED) + new_seg = NULL; + #else |