summaryrefslogtreecommitdiff
path: root/locks
diff options
context:
space:
mode:
authorstoddard <stoddard@13f79535-47bb-0310-9956-ffa450edef68>2002-02-28 03:33:37 +0000
committerstoddard <stoddard@13f79535-47bb-0310-9956-ffa450edef68>2002-02-28 03:33:37 +0000
commit0274bae0b4232e5dd4bca4b6fa928592d1ec1b03 (patch)
tree3ae09be25b9dd68638a96e19da293919584d2026 /locks
parent5b382240a68e77129c11252873493e2e06254d26 (diff)
downloadlibapr-0274bae0b4232e5dd4bca4b6fa928592d1ec1b03.tar.gz
Win32: Fix apr_proc_mutex_lock/trylock. Getting WAIT_ABANDONED is
not a failure condition when calling WaitForSingleObject on a mutex. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@63071 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'locks')
-rw-r--r--locks/win32/proc_mutex.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/locks/win32/proc_mutex.c b/locks/win32/proc_mutex.c
index 50524a6ee..219362db2 100644
--- a/locks/win32/proc_mutex.c
+++ b/locks/win32/proc_mutex.c
@@ -139,12 +139,9 @@ APR_DECLARE(apr_status_t) apr_proc_mutex_lock(apr_proc_mutex_t *mutex)
rv = WaitForSingleObject(mutex->handle, INFINITE);
- if (rv == WAIT_OBJECT_0) {
+ if (rv == WAIT_OBJECT_0 || rv == WAIT_ABANDONED) {
return APR_SUCCESS;
}
- else if (rv == WAIT_ABANDONED) {
- return APR_EBUSY;
- }
return apr_get_os_error();
}
@@ -154,12 +151,9 @@ APR_DECLARE(apr_status_t) apr_proc_mutex_trylock(apr_proc_mutex_t *mutex)
rv = WaitForSingleObject(mutex->handle, 0);
- if (rv == WAIT_OBJECT_0) {
+ if (rv == WAIT_OBJECT_0 || rv == WAIT_ABANDONED) {
return APR_SUCCESS;
}
- else if (rv == WAIT_ABANDONED) {
- return APR_EBUSY;
- }
return apr_get_os_error();
}