summaryrefslogtreecommitdiff
path: root/src/thread/pthread_attr_setstack.c
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2016-11-07 20:47:24 -0500
committerRich Felker <dalias@aerifal.cx>2016-11-07 20:47:24 -0500
commit33ce920857405d4f4b342c85b74588a15e2702e5 (patch)
tree54c7c840b40b68aa52f68a0a69c9e61b9ac4c388 /src/thread/pthread_attr_setstack.c
parent7442442ccc665641a8827177e8e7ed45bbbd6584 (diff)
downloadmusl-33ce920857405d4f4b342c85b74588a15e2702e5.tar.gz
simplify pthread_attr_t stack/guard size representation
previously, the pthread_attr_t object was always initialized all-zero, and stack/guard size were represented as differences versus their defaults. this required lots of confusing offset arithmetic everywhere they were used. instead, have pthread_attr_init fill in the default values, and work with absolute sizes everywhere.
Diffstat (limited to 'src/thread/pthread_attr_setstack.c')
-rw-r--r--src/thread/pthread_attr_setstack.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/thread/pthread_attr_setstack.c b/src/thread/pthread_attr_setstack.c
index 61707a31..1eddcbd6 100644
--- a/src/thread/pthread_attr_setstack.c
+++ b/src/thread/pthread_attr_setstack.c
@@ -4,6 +4,6 @@ int pthread_attr_setstack(pthread_attr_t *a, void *addr, size_t size)
{
if (size-PTHREAD_STACK_MIN > SIZE_MAX/4) return EINVAL;
a->_a_stackaddr = (size_t)addr + size;
- a->_a_stacksize = size - DEFAULT_STACK_SIZE;
+ a->_a_stacksize = size;
return 0;
}