| Last change
                  on this file since 1069 was
                  1035,
                  checked in by mitchb, 17 years ago | 
        
          | Fix "the-bug" (non-empty content in 304s) in PHP (patch by ezyang) and Apache
PHP should not produce any output, even if zlib.output_compression is
on, if the HTTP response code is 204 or 304 (no content or not modified).
Fixes PHP bug #42362 with php.cvs #56693, see:
http://bugs.php.net/bug.php?id=42362
http://news.php.net/php.cvs/56693
http://cvs.php.net/viewvc.cgi/php-src/ext/zlib/zlib.c?r1=1.183.2.6.2.5.2.9&r2=1.183.2.6.2.5.2.10
Apache should discard any body provided by a script (in any language, not
just PHP) when the status is "no content" or "not modified".
Addresses part of Apache bug #40953, see:
https://issues.apache.org/bugzilla/show_bug.cgi?id=40953#c7
Solves scripts.mit.edu support issue #773060, see:
https://help.mit.edu/Ticket/UpdateCallCenter.html?id=773060
https://diswww.mit.edu/charon/scripts/24018 | 
        | File size:
            451 bytes | 
      
      
        
  | Rev | Line |  | 
|---|
| [1035] | 1 | --- php-5.2.8/ext/zlib/zlib.c.orig      2008-08-01 22:36:59.000000000 -0400 | 
|---|
|  | 2 | +++ php-5.2.8/ext/zlib/zlib.c   2009-03-28 14:52:43.000000000 -0400 | 
|---|
|  | 3 | @@ -979,7 +979,7 @@ | 
|---|
|  | 4 | { | 
|---|
|  | 5 | zend_bool do_start, do_end; | 
|---|
|  | 6 |  | 
|---|
|  | 7 | -       if (!ZLIBG(output_compression)) { | 
|---|
|  | 8 | +       if (!ZLIBG(output_compression) || SG(sapi_headers).http_response_code == 204 || SG(sapi_headers).http_response_code == 304) { | 
|---|
|  | 9 | *handled_output = NULL; | 
|---|
|  | 10 | } else { | 
|---|
|  | 11 | do_start = (mode & PHP_OUTPUT_HANDLER_START ? 1 : 0); | 
|---|
       
      
      Note: See 
TracBrowser
        for help on using the repository browser.