-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Brion Vibber wrote: | (Side note: the file cache doesn't interact well with output-buffered | gzipping. Comment out the line that sets that near the top of | LocalSettings.php; unfortunately that doesn't solve this problem.) | | The output is being written out to the cache file *and sent to the | client* but the connection hangs there. I'm not sure why yet...
Found the problem. It seems that the buffer is being passed by reference on PHP 4.1; the variable is modified by the function and all goes to hell. Making a copy to operate on gets things working.
Diff attached; fix just added to CVS head and 1.3 branch.
- -- brion vibber (brion @ pobox.com)
Index: includes/CacheManager.php =================================================================== RCS file: /cvsroot/wikipedia/phase3/includes/CacheManager.php,v retrieving revision 1.5.2.1 diff -u -r1.5.2.1 CacheManager.php --- includes/CacheManager.php 13 Jun 2004 01:15:09 -0000 1.5.2.1 +++ includes/CacheManager.php 8 Aug 2004 10:15:48 -0000 @@ -110,7 +110,8 @@ if(!file_exists($mydir2)) { mkdir($mydir2,0775); } } - function saveToFileCache( $text ) { + function saveToFileCache( $origtext ) { + $text = $origtext; if(strcmp($text,'') == 0) return ''; wfDebug(" saveToFileCache()\n", false);