diff options
Diffstat (limited to 'cpukit/posix/src/condinit.c')
-rw-r--r-- | cpukit/posix/src/condinit.c | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/cpukit/posix/src/condinit.c b/cpukit/posix/src/condinit.c index cab76e4ab1..319cd4383a 100644 --- a/cpukit/posix/src/condinit.c +++ b/cpukit/posix/src/condinit.c @@ -19,10 +19,10 @@ /*PAGE * - * 11.4.2 Initializing and Destroying a Condition Variable, + * 11.4.2 Initializing and Destroying a Condition Variable, * P1003.1c/Draft 10, p. 87 */ - + int pthread_cond_init( pthread_cond_t *cond, const pthread_condattr_t *attr @@ -30,29 +30,29 @@ int pthread_cond_init( { POSIX_Condition_variables_Control *the_cond; const pthread_condattr_t *the_attr; - + if ( attr ) the_attr = attr; else the_attr = &_POSIX_Condition_variables_Default_attributes; - + /* * XXX: Be careful about attributes when global!!! */ - + if ( the_attr->process_shared == PTHREAD_PROCESS_SHARED ) return POSIX_MP_NOT_IMPLEMENTED(); - + if ( !the_attr->is_initialized ) return EINVAL; - + _Thread_Disable_dispatch(); - + the_cond = _POSIX_Condition_variables_Allocate(); - + if ( !the_cond ) { _Thread_Enable_dispatch(); return ENOMEM; } - + #if defined(RTEMS_MULTIPROCESSING) if ( the_attr->process_shared == PTHREAD_PROCESS_SHARED && !( _Objects_MP_Allocate_and_open( &_POSIX_Condition_variables_Information, @@ -62,7 +62,7 @@ int pthread_cond_init( return EAGAIN; } #endif - + the_cond->process_shared = the_attr->process_shared; the_cond->Mutex = POSIX_CONDITION_VARIABLES_NO_MUTEX; @@ -80,9 +80,9 @@ int pthread_cond_init( &the_cond->Object, 0 ); - + *cond = the_cond->Object.id; - + #if defined(RTEMS_MULTIPROCESSING) if ( the_attr->process_shared == PTHREAD_PROCESS_SHARED ) _POSIX_Condition_variables_MP_Send_process_packet( @@ -92,7 +92,7 @@ int pthread_cond_init( 0 /* Not used */ ); #endif - + _Thread_Enable_dispatch(); return 0; |