From 2d7486fcc02c45690efd4b21943dd2ae02e96014 Mon Sep 17 00:00:00 2001 From: Bernard Xiong Date: Tue, 8 Nov 2016 09:21:32 +0800 Subject: [PATCH] [pthreads] Fix the sem_trywait issue. --- components/libc/pthreads/semaphore.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/components/libc/pthreads/semaphore.c b/components/libc/pthreads/semaphore.c index ae69e0d1bc..ea6701b1e0 100644 --- a/components/libc/pthreads/semaphore.c +++ b/components/libc/pthreads/semaphore.c @@ -85,7 +85,7 @@ static sem_t *posix_sem_find(const char* name) return iter; } } - + return RT_NULL; } @@ -334,7 +334,7 @@ int sem_timedwait(sem_t *sem, const struct timespec *abs_timeout) /* calculate os tick */ tick = clock_time_to_tick(abs_timeout); - + result = rt_sem_take(sem->sem, tick); if (result == -RT_ETIMEOUT) { @@ -362,7 +362,7 @@ int sem_trywait(sem_t *sem) return -1; } - result = rt_sem_take(sem->sem, RT_WAITING_FOREVER); + result = rt_sem_take(sem->sem, 0); if (result == -RT_ETIMEOUT) { rt_set_errno(EAGAIN);