summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwrowe <wrowe@13f79535-47bb-0310-9956-ffa450edef68>2005-09-21 18:07:06 +0000
committerwrowe <wrowe@13f79535-47bb-0310-9956-ffa450edef68>2005-09-21 18:07:06 +0000
commit9400151eaad8d8f908c70981e1ed7aff076f8c82 (patch)
tree732ce3714f8b3bf2976926d86e1df1e3cba53193
parent28210842c85a1a5233644986853a2e38a35ddfd9 (diff)
downloadlibapr-9400151eaad8d8f908c70981e1ed7aff076f8c82.tar.gz
Win32: fix apr_proc_mutex_trylock() to handle WAIT_TIMEOUT,
returning APR_EBUSY. Backport: 290766 Submitted by: Ronen Mizrahi <ronen tversity.com> Reviewed by: wrowe, Henry Jen git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/0.9.x@290769 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--CHANGES3
-rw-r--r--locks/win32/proc_mutex.c3
2 files changed, 6 insertions, 0 deletions
diff --git a/CHANGES b/CHANGES
index de68e09c5..6c8bd0b34 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,8 @@
Changes with APR 0.9.7
+ *) Win32: fix apr_proc_mutex_trylock() to handle WAIT_TIMEOUT,
+ returning APR_EBUSY. [Ronen Mizrahi <ronen@tversity.com>]
+
*) Fix apr_file_read() to catch write failures when flushing pending
writes for a buffered file. [Joe Orton]
diff --git a/locks/win32/proc_mutex.c b/locks/win32/proc_mutex.c
index dffa0a561..7d91b32b8 100644
--- a/locks/win32/proc_mutex.c
+++ b/locks/win32/proc_mutex.c
@@ -144,6 +144,9 @@ APR_DECLARE(apr_status_t) apr_proc_mutex_trylock(apr_proc_mutex_t *mutex)
if (rv == WAIT_OBJECT_0 || rv == WAIT_ABANDONED) {
return APR_SUCCESS;
+ }
+ else if (rv == WAIT_TIMEOUT) {
+ return APR_EBUSY;
}
return apr_get_os_error();
}