From 4f60309bdd5bf0785586e30d0c9e419f699d051f Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Thu, 1 Feb 1996 22:09:07 +0000 Subject: Swapped order of nested acquisition check and check for returning unsatisfied. --- c/src/exec/score/src/coremutex.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'c') diff --git a/c/src/exec/score/src/coremutex.c b/c/src/exec/score/src/coremutex.c index 08d1630b7f..a0c3fd0264 100644 --- a/c/src/exec/score/src/coremutex.c +++ b/c/src/exec/score/src/coremutex.c @@ -122,12 +122,6 @@ void _CORE_mutex_Seize( return; } - if ( !wait ) { - _ISR_Enable( level ); - executing->Wait.return_code = CORE_MUTEX_STATUS_UNSATISFIED_NOWAIT; - return; - } - if ( _Objects_Are_ids_equal( _Thread_Executing->Object.id, the_mutex->holder_id ) ) { if ( _CORE_mutex_Is_nesting_allowed( &the_mutex->Attributes ) ) @@ -139,6 +133,12 @@ void _CORE_mutex_Seize( return; } + if ( !wait ) { + _ISR_Enable( level ); + executing->Wait.return_code = CORE_MUTEX_STATUS_UNSATISFIED_NOWAIT; + return; + } + _Thread_queue_Enter_critical_section( &the_mutex->Wait_queue ); executing->Wait.queue = &the_mutex->Wait_queue; executing->Wait.id = id; -- cgit v1.2.3