summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2011-09-27 12:18:44 -0400
committerRich Felker <dalias@aerifal.cx>2011-09-27 12:18:44 -0400
commit3f39c9b3130cd6c142d358159879b799370a6663 (patch)
tree151401161ffe3ed0ab999b63a0481a21157e95f9
parent7e14ed1360c65b78c3ad1fc4fafea13e30067478 (diff)
downloadmusl-3f39c9b3130cd6c142d358159879b799370a6663.tar.gz
fix incorrect allocation failure check in pthread_create
mmap returns MAP_FAILED not 0 because some idiot thought the ability to mmap the null pointer page would be a good idea...
-rw-r--r--src/thread/pthread_create.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/thread/pthread_create.c b/src/thread/pthread_create.c
index f7768d8d..0189f028 100644
--- a/src/thread/pthread_create.c
+++ b/src/thread/pthread_create.c
@@ -102,7 +102,7 @@ int pthread_create(pthread_t *res, const pthread_attr_t *attr, void *(*entry)(vo
}
size += __pthread_tsd_size;
map = mmap(0, size, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1, 0);
- if (!map) return EAGAIN;
+ if (map == MAP_FAILED) return EAGAIN;
if (guard) mprotect(map, guard, PROT_NONE);
tsd = map + size - __pthread_tsd_size;