]> granicus.if.org Git - apache/commitdiff
Preserve the original error, or if the unlock fails then use that
authorAaron Bannert <aaron@apache.org>
Sun, 28 Apr 2002 03:20:06 +0000 (03:20 +0000)
committerAaron Bannert <aaron@apache.org>
Sun, 28 Apr 2002 03:20:06 +0000 (03:20 +0000)
error instead.

Obtained from:  Justin Erenkrantz
Submitted by: Aaron Bannert

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94827 13f79535-47bb-0310-9956-ffa450edef68

server/mpm/worker/fdqueue.c

index e5d20747fba025eaecf0d79f95a7a0026a9a470d..7d9263ff01474777dc7a83f291b7562e9b72a154 100644 (file)
@@ -130,9 +130,10 @@ apr_status_t ap_queue_info_wait_for_idler(fd_queue_info_t *queue_info)
         rv = apr_thread_cond_wait(queue_info->wait_for_idler,
                                   queue_info->idlers_mutex);
         if (rv != APR_SUCCESS) {
-            rv = apr_thread_mutex_unlock(queue_info->idlers_mutex);
-            if (rv != APR_SUCCESS) {
-                return rv;
+            apr_status_t rv2;
+            rv2 = apr_thread_mutex_unlock(queue_info->idlers_mutex);
+            if (rv2 != APR_SUCCESS) {
+                return rv2;
             }
             return rv;
         }