diff --git a/src/libs/threading.h b/src/libs/threading.h index 7f94e8c..6a346af 100644 --- a/src/libs/threading.h +++ b/src/libs/threading.h @@ -67,7 +67,7 @@ #define US_COND_INIT(x_cond) assert(!pthread_cond_init(&(x_cond), NULL)) #define US_COND_DESTROY(x_cond) assert(!pthread_cond_destroy(&(x_cond))) #define US_COND_SIGNAL(x_cond) assert(!pthread_cond_signal(&(x_cond))) -#define US_COND_WAIT_TRUE(x_var, x_cond, x_mutex) { while(!(x_var)) assert(!pthread_cond_wait(&(x_cond), &(x_mutex))); } +#define US_COND_WAIT_FOR(x_var, x_cond, x_mutex) { while(!(x_var)) assert(!pthread_cond_wait(&(x_cond), &(x_mutex))); } #ifdef WITH_PTHREAD_NP diff --git a/src/ustreamer/workers.c b/src/ustreamer/workers.c index 1fbb53b..8343db1 100644 --- a/src/ustreamer/workers.c +++ b/src/ustreamer/workers.c @@ -104,7 +104,7 @@ us_worker_s *us_workers_pool_wait(us_workers_pool_s *pool) { us_worker_s *ready_wr = NULL; US_MUTEX_LOCK(pool->free_workers_mutex); - US_COND_WAIT_TRUE(pool->free_workers, pool->free_workers_cond, pool->free_workers_mutex); + US_COND_WAIT_FOR(pool->free_workers, pool->free_workers_cond, pool->free_workers_mutex); US_MUTEX_UNLOCK(pool->free_workers_mutex); if (pool->oldest_wr && !atomic_load(&pool->oldest_wr->has_job)) { @@ -185,7 +185,7 @@ static void *_worker_thread(void *v_worker) { US_LOG_DEBUG("Worker %s waiting for a new job ...", wr->name); US_MUTEX_LOCK(wr->has_job_mutex); - US_COND_WAIT_TRUE(atomic_load(&wr->has_job), wr->has_job_cond, wr->has_job_mutex); + US_COND_WAIT_FOR(atomic_load(&wr->has_job), wr->has_job_cond, wr->has_job_mutex); US_MUTEX_UNLOCK(wr->has_job_mutex); if (!atomic_load(&wr->pool->stop)) {