You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by wr...@apache.org on 2006/12/07 20:19:42 UTC

svn commit: r483615 - /httpd/httpd/branches/2.0.x/modules/arch/win32/mod_isapi.c

Author: wrowe
Date: Thu Dec  7 11:19:41 2006
New Revision: 483615

URL: http://svn.apache.org/viewvc?view=rev&rev=483615
Log:
Revert a regression introduced in the recent overhauls of mod_isapi.

PR 40470 points out that we no longer handle ate == headlen, where
there is a headers-only response from the isapi app to the server.

This patch restores the previous behavior of pending those headers
until some amount of body response is ready to be sent to the client.

Backports: 483613

Modified:
    httpd/httpd/branches/2.0.x/modules/arch/win32/mod_isapi.c

Modified: httpd/httpd/branches/2.0.x/modules/arch/win32/mod_isapi.c
URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.0.x/modules/arch/win32/mod_isapi.c?view=diff&rev=483615&r1=483614&r2=483615
==============================================================================
--- httpd/httpd/branches/2.0.x/modules/arch/win32/mod_isapi.c (original)
+++ httpd/httpd/branches/2.0.x/modules/arch/win32/mod_isapi.c Thu Dec  7 11:19:41 2006
@@ -964,6 +964,11 @@
             cid->response_sent = 1;
             return (rv == APR_SUCCESS);
         }
+        /* Deliberately hold off sending 'just the headers' to begin to
+         * accumulate the body and speed up the overall response, or at
+         * least wait for the end the session.
+         */
+        return 1;
     }
 
     case HSE_REQ_DONE_WITH_SESSION:
@@ -1354,8 +1359,13 @@
             APR_BRIGADE_INSERT_TAIL(bb, b);
             rv = ap_pass_brigade(cid->r->output_filters, bb);
             cid->response_sent = 1;
+            return (rv == APR_SUCCESS);
         }
-        return (rv == APR_SUCCESS);
+        /* Deliberately hold off sending 'just the headers' to begin to
+         * accumulate the body and speed up the overall response, or at
+         * least wait for the end the session.
+         */
+        return 1;
     }
 
     case HSE_REQ_CLOSE_CONNECTION:  /* Added after ISAPI 4.0 */