]> granicus.if.org Git - apache/commitdiff
configure: bump thread count for the &errno test
authorJacob Champion <jchampion@apache.org>
Fri, 14 Apr 2017 00:14:24 +0000 (00:14 +0000)
committerJacob Champion <jchampion@apache.org>
Fri, 14 Apr 2017 00:14:24 +0000 (00:14 +0000)
Increase the number of threads from three to ten. Patch by rjung.

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

acinclude.m4

index 254e789a44b59dcee429c5a5a5328ed811df6975..14c02a1e8392b28d7bcb04a450ab1b692c4ef724 100644 (file)
@@ -653,7 +653,7 @@ AC_DEFUN([APACHE_CHECK_OPENSSL],[
           #include "apr_thread_cond.h"
           #include "apr_thread_proc.h"
 
-          #define NUM_THREADS 3
+          #define NUM_THREADS 10
 
           struct thread_data {
               apr_thread_mutex_t *mutex;
@@ -692,6 +692,7 @@ AC_DEFUN([APACHE_CHECK_OPENSSL],[
           int ret = 0;
           apr_status_t status;
           int i;
+          int j;
 
           apr_pool_t         *pool;
           apr_thread_mutex_t *mutex;
@@ -738,10 +739,13 @@ AC_DEFUN([APACHE_CHECK_OPENSSL],[
           }
 
           /* Check that no addresses were duplicated. */
-          if ((tdata[0].errno_addr == tdata[1].errno_addr)
-              || (tdata[1].errno_addr == tdata[2].errno_addr)
-              || (tdata[0].errno_addr == tdata[2].errno_addr)) {
-              ret = 5;
+          for (i = 0; i < NUM_THREADS - 1; ++i) {
+              for (j = i + 1; j < NUM_THREADS; ++j) {
+                  if (tdata[i].errno_addr == tdata[j].errno_addr) {
+                      ret = 5;
+                      goto out;
+                  }
+              }
           }
 
       out: