diff options
-rw-r--r-- | cpukit/ChangeLog | 5 | ||||
-rw-r--r-- | cpukit/posix/src/prwlocktimedrdlock.c | 23 |
2 files changed, 17 insertions, 11 deletions
diff --git a/cpukit/ChangeLog b/cpukit/ChangeLog index c076869257..b2cdf4c5d1 100644 --- a/cpukit/ChangeLog +++ b/cpukit/ChangeLog @@ -1,3 +1,8 @@ +2009-06-30 Joel Sherrill <joel.sherrill@OARcorp.com> + + * posix/src/prwlocktimedrdlock.c: Restructure if slightly to make to + make it easier to analyze for coverage. + 2009-06-29 Joel Sherrill <joel.sherrill@oarcorp.com> * posix/src/killinfo.c, posix/src/mutexinit.c, posix/src/psignal.c, diff --git a/cpukit/posix/src/prwlocktimedrdlock.c b/cpukit/posix/src/prwlocktimedrdlock.c index dfd2124bfa..2b55da7294 100644 --- a/cpukit/posix/src/prwlocktimedrdlock.c +++ b/cpukit/posix/src/prwlocktimedrdlock.c @@ -85,17 +85,18 @@ int pthread_rwlock_timedrdlock( ); _Thread_Enable_dispatch(); - if ( !do_wait && - (_Thread_Executing->Wait.return_code == CORE_RWLOCK_UNAVAILABLE) ) { - switch (status) { - case POSIX_ABSOLUTE_TIMEOUT_INVALID: - return EINVAL; - case POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST: - case POSIX_ABSOLUTE_TIMEOUT_IS_NOW: - return ETIMEDOUT; - case POSIX_ABSOLUTE_TIMEOUT_IS_IN_FUTURE: - break; - } + if ( !do_wait ) { + if ( _Thread_Executing->Wait.return_code == CORE_RWLOCK_UNAVAILABLE ) { + switch (status) { + case POSIX_ABSOLUTE_TIMEOUT_INVALID: + return EINVAL; + case POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST: + case POSIX_ABSOLUTE_TIMEOUT_IS_NOW: + return ETIMEDOUT; + case POSIX_ABSOLUTE_TIMEOUT_IS_IN_FUTURE: + break; + } + } } return _POSIX_RWLock_Translate_core_RWLock_return_code( |