]> granicus.if.org Git - apache/commitdiff
The patch fixes 2 things.
authorJeff Trawick <trawick@apache.org>
Mon, 18 Jun 2001 11:50:42 +0000 (11:50 +0000)
committerJeff Trawick <trawick@apache.org>
Mon, 18 Jun 2001 11:50:42 +0000 (11:50 +0000)
* apr_terminate now has the right declaration so it can be used
directly in atexit
* Win2K gets a divde by zero error when heartbeatres is zero (reproduce via
    support\Debug\ab.exe -k -c 6 -n 100 localhost/

Submitted by:   Ian Holsman <ianh@cnet.com>
Reviewed by:    Jeff Trawick

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

CHANGES
support/ab.c

diff --git a/CHANGES b/CHANGES
index a08c210e151a0816204b07a69ca872bfcb864da7..1843c88a4b167d94b736650f5a7f20d5cf83c10c 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,9 @@
 Changes with Apache 2.0.19-dev
 
+  *) Fix an ab problem which could cause a divide-by-zero exception
+     with certain invocations (e.g., ab -k -c 6 -n 100 localhost/).
+     [Ian Holsman <ianh@cnet.com>]
+
   *) Solve case-insensitive platforms' confusion about negotiated
      filenames, allowing files of differnt case to match in choosing
      the document to serve.  [William Rowe]
index 55f382ac7c6d149cf447e6668ab2d320645ce155..8cb4cc3277a97f034eaa38738ced0225f24f8fb4 100644 (file)
@@ -1079,7 +1079,7 @@ static void read_connection(struct connection * c)
        }
        if (done < requests) {
            struct data s;
-           if ((done) && (!(done % heartbeatres))) {
+           if (done && heartbeatres && !(done % heartbeatres)) {
                fprintf(stderr, "Completed %ld requests\n", done);
                fflush(stderr);
            }
@@ -1289,14 +1289,14 @@ static void test(void)
 static void copyright(void)
 {
     if (!use_html) {
-       printf("This is ApacheBench, Version %s\n", AB_VERSION " <$Revision: 1.70 $> apache-2.0");
+       printf("This is ApacheBench, Version %s\n", AB_VERSION " <$Revision: 1.71 $> apache-2.0");
        printf("Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/\n");
        printf("Copyright (c) 1998-2001 The Apache Software Foundation, http://www.apache.org/\n");
        printf("\n");
     }
     else {
        printf("<p>\n");
-       printf(" This is ApacheBench, Version %s <i>&lt;%s&gt;</i> apache-2.0<br>\n", AB_VERSION, "$Revision: 1.70 $");
+       printf(" This is ApacheBench, Version %s <i>&lt;%s&gt;</i> apache-2.0<br>\n", AB_VERSION, "$Revision: 1.71 $");
        printf(" Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/<br>\n");
        printf(" Copyright (c) 1998-2001 The Apache Software Foundation, http://www.apache.org/<br>\n");
        printf("</p>\n<p>\n");
@@ -1438,11 +1438,6 @@ static int open_postfile(const char *pfile)
     return 0;
 }
 
-static void terminate(void)
-{
-    apr_terminate();
-}
-
 /* ------------------------------------------------------- */
 
 /* sort out command-line args and call test */
@@ -1465,7 +1460,7 @@ int main(int argc, const char *const argv[])
     hdrs[0] = '\0';
 
     apr_initialize();
-    atexit(terminate);
+    atexit(apr_terminate);
     apr_pool_create(&cntxt, NULL);
 
 #ifdef NOT_ASCII