diff options
Diffstat (limited to 'cpukit/rtems/include/rtems/rtems/semimpl.h')
-rw-r--r-- | cpukit/rtems/include/rtems/rtems/semimpl.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/cpukit/rtems/include/rtems/rtems/semimpl.h b/cpukit/rtems/include/rtems/rtems/semimpl.h index 48b0a84c68..6d0f156e5c 100644 --- a/cpukit/rtems/include/rtems/rtems/semimpl.h +++ b/cpukit/rtems/include/rtems/rtems/semimpl.h @@ -58,11 +58,15 @@ RTEMS_INLINE_ROUTINE const Thread_queue_Operations *_Semaphore_Get_operations( const Semaphore_Control *the_semaphore ) { + if ( the_semaphore->variant == SEMAPHORE_VARIANT_MUTEX_INHERIT_PRIORITY ) { + return &_Thread_queue_Operations_priority_inherit; + } + if ( the_semaphore->discipline == SEMAPHORE_DISCIPLINE_PRIORITY ) { return &_Thread_queue_Operations_priority; - } else { - return &_Thread_queue_Operations_FIFO; } + + return &_Thread_queue_Operations_FIFO; } /** |