mirror of
git://git.musl-libc.org/musl
synced 2025-01-11 00:59:46 +00:00
fix namespace violation for c11 mutex functions
__pthread_mutex_timedlock is used to implement c11 mutex functions, and therefore cannot call pthread_mutex_trylock by name.
This commit is contained in:
parent
d1fa288606
commit
2de29bc994
@ -1,5 +1,7 @@
|
||||
#include "pthread_impl.h"
|
||||
|
||||
int __pthread_mutex_trylock(pthread_mutex_t *);
|
||||
|
||||
int __pthread_mutex_timedlock(pthread_mutex_t *restrict m, const struct timespec *restrict at)
|
||||
{
|
||||
if ((m->_m_type&15) == PTHREAD_MUTEX_NORMAL
|
||||
@ -15,7 +17,7 @@ int __pthread_mutex_timedlock(pthread_mutex_t *restrict m, const struct timespec
|
||||
int spins = 100;
|
||||
while (spins-- && m->_m_lock && !m->_m_waiters) a_spin();
|
||||
|
||||
while ((r=pthread_mutex_trylock(m)) == EBUSY) {
|
||||
while ((r=__pthread_mutex_trylock(m)) == EBUSY) {
|
||||
if (!(r=m->_m_lock) || ((r&0x40000000) && (type&4)))
|
||||
continue;
|
||||
if ((type&3) == PTHREAD_MUTEX_ERRORCHECK
|
||||
|
Loading…
Reference in New Issue
Block a user