X-Git-Url: http://nsz.repo.hu/git/?p=musl;a=blobdiff_plain;f=src%2Fthread%2Fpthread_barrier_init.c;h=ccaab4ebdd7fe943a3112f9d7911d1b52dc94247;hp=736d10146faf86cc432be85593482ddada09fb85;hb=1e597a3e9bbdbe82d2ffd3963019d3a3edeed859;hpb=e882756311c7b06e59fcc8e582f03852b7dcfd30 diff --git a/src/thread/pthread_barrier_init.c b/src/thread/pthread_barrier_init.c index 736d1014..ccaab4eb 100644 --- a/src/thread/pthread_barrier_init.c +++ b/src/thread/pthread_barrier_init.c @@ -2,7 +2,7 @@ int pthread_barrier_init(pthread_barrier_t *b, const pthread_barrierattr_t *a, unsigned count) { - if (!count) return EINVAL; - *b = (pthread_barrier_t){ ._b_limit = count-1 }; + if (count-1 > INT_MAX-1) return EINVAL; + *b = (pthread_barrier_t){ ._b_limit = count-1 | (a?*a:0) }; return 0; }