summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>2003-02-16 08:59:15 +0000
committerJim Meyering <jim@meyering.net>2003-02-16 08:59:15 +0000
commitc276ca6e497fbaa246b210916a11b6b532998062 (patch)
treec8aadf119e23ef8f7c58424fd7bcfe7c03bfe1de /lib
parente58f9df1b3d7da93ad1721246bc24c3fad43f0a6 (diff)
downloadcoreutils-c276ca6e497fbaa246b210916a11b6b532998062.tar.xz
(MAP_ANONYMOUS): Use MAP_ANON, if possible.
Initialize `fd' to -1, so Solaris' mmap works with MAP_ANON.
Diffstat (limited to 'lib')
-rw-r--r--lib/mmap-stack.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/mmap-stack.c b/lib/mmap-stack.c
index f060bba4c..192cf2cf3 100644
--- a/lib/mmap-stack.c
+++ b/lib/mmap-stack.c
@@ -36,7 +36,11 @@
#include "mmap-stack.h"
#ifndef MAP_ANONYMOUS
-# define MAP_ANONYMOUS 0
+# ifdef MAP_ANON
+# define MAP_ANONYMOUS MAP_ANON
+# else
+# define MAP_ANONYMOUS 0
+# endif
#endif
/* Set up context, *CTX, so that it may be used via makecontext,
@@ -46,7 +50,7 @@ static int
get_context (ucontext_t *ctx, size_t size)
{
void *stack;
- int fd = 0;
+ int fd = -1; /* This must be -1 in order for Solaris' MAP_ANON to work. */
if (getcontext (ctx))
return 1;