From 94883a92fbc43b41e4888beb27fc2c3e2a95d4f1 Mon Sep 17 00:00:00 2001 From: bernard <bernard.xiong@gmail.com> Date: Thu, 31 Jul 2014 08:34:36 +0800 Subject: [PATCH] [pthreads] Fix pthread_cond_init issue. #261 --- components/pthreads/pthread_cond.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/components/pthreads/pthread_cond.c b/components/pthreads/pthread_cond.c index e5342dd77..25628fc2b 100644 --- a/components/pthreads/pthread_cond.c +++ b/components/pthreads/pthread_cond.c @@ -98,7 +98,11 @@ int pthread_cond_init(pthread_cond_t *cond, const pthread_condattr_t *attr) rt_snprintf(cond_name, sizeof(cond_name), "cond%02d", cond_num++); - cond->attr = *attr; + if (attr == RT_NULL) /* use default value */ + cond->attr = PTHREAD_PROCESS_PRIVATE; + else + cond->attr = *attr; + result = rt_sem_init(&cond->sem, cond_name, 0, RT_IPC_FLAG_FIFO); if (result != RT_EOK) return EINVAL; -- GitLab