diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-10-17 11:46:54 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-10-17 12:10:31 +0200 |
commit | 37eb717f90c04b9a2654ef5c5b247eb50652e54b (patch) | |
tree | a7b40d593bbccdf1e880faa2cd9f6bdafdf1747f /cpukit/posix/src/pthreadcreate.c | |
parent | posix: Remove POSIX_API_Control::schedparam (diff) | |
download | rtems-37eb717f90c04b9a2654ef5c5b247eb50652e54b.tar.bz2 |
posix: Simplify _POSIX_Threads_Create_extension()
Move unblocked signals initialization to pthread_create().
Update #2514.
Diffstat (limited to 'cpukit/posix/src/pthreadcreate.c')
-rw-r--r-- | cpukit/posix/src/pthreadcreate.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/cpukit/posix/src/pthreadcreate.c b/cpukit/posix/src/pthreadcreate.c index 0de566f7c2..2315b7f5ee 100644 --- a/cpukit/posix/src/pthreadcreate.c +++ b/cpukit/posix/src/pthreadcreate.c @@ -74,6 +74,7 @@ int pthread_create( Thread_Control *executing; const Scheduler_Control *scheduler; POSIX_API_Control *api; + const POSIX_API_Control *executing_api; int schedpolicy = SCHED_RR; struct sched_param schedparam; Objects_Name name; @@ -237,6 +238,9 @@ int pthread_create( * finish initializing the per API structure */ api = the_thread->API_Extensions[ THREAD_API_POSIX ]; + executing_api = executing->API_Extensions[ THREAD_API_POSIX ]; + + api->signals_unblocked = executing_api->signals_unblocked; api->created_with_explicit_scheduler = ( the_attr->inheritsched == PTHREAD_EXPLICIT_SCHED ); |