From 35110d3e88135fc90b5002e6a927c1b7fa684c4f Mon Sep 17 00:00:00 2001 From: Jeff Hill Date: Mon, 16 Jul 2001 17:30:51 +0000 Subject: [PATCH] fixed incorrect status returned from tryLock() --- src/libCom/osi/os/posix/osdMutex.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/libCom/osi/os/posix/osdMutex.c b/src/libCom/osi/os/posix/osdMutex.c index 2937d9fc5..2db25e93e 100644 --- a/src/libCom/osi/os/posix/osdMutex.c +++ b/src/libCom/osi/os/posix/osdMutex.c @@ -182,7 +182,7 @@ epicsMutexLockStatus epicsMutexLockWithTimeout(epicsMutexId pmutex, double timeo epicsMutexLockStatus epicsMutexTryLock(epicsMutexId pmutex) { pthread_t tid = pthread_self(); - epicsMutexLockStatus status = epicsMutexLockError; + epicsMutexLockStatus status; int pthreadStatus; pthreadStatus = pthread_mutex_lock(&pmutex->lock); @@ -191,7 +191,10 @@ epicsMutexLockStatus epicsMutexTryLock(epicsMutexId pmutex) pmutex->ownerTid = tid; pmutex->owned = 1; pmutex->count++; - status = 0; + status = epicsMutexLockOK; + } + else { + status = epicsMutexLockTimeout; } pthreadStatus = pthread_mutex_unlock(&pmutex->lock); checkStatusQuit(pthreadStatus,"pthread_mutex_unlock","epicsMutexTryLock");