ID: 38532 User updated by: fdcxl at 163 dot com Reported By: fdcxl at 163 dot com Status: Bogus Bug Type: *Web Server problem Operating System: linux PHP Version: 5.1.5 New Comment:
I make another test. With the following script: <?php $str = "asdfasdf5687ju9465870u985tg79yh8"; $str1 = str_repeat($str, 1000); $str2 = $str; function write() { file_put_contents("/tmp/abc", "Final Connection:".connection_status()."\n", FILE_APPEND); } register_shutdown_function("write"); while(1) { $count = 100000000; while($count > 0) { $count = $count -1; if($count%1000000==0) { var_dump($str1); //var_dump($str2); ob_flush(); } } } ?> If large mount of output is sent like $str1, I will get ABORT signal and script terminated. But if $str2 is sent, it seems that no ABORT signal and script keeps running to TIMEOUT Previous Comments: ------------------------------------------------------------------------ [2006-08-21 09:28:26] fdcxl at 163 dot com In the manual, it says that when user clicks STOP button, the script should be terminated. In fact, the script keeps running. I checked it by verifying the size of /tmp/abc, which keeps increasing. I have tried to send output. It seems that IE maintains its own buffer, that any output can't get displayed before I click STOP button ------------------------------------------------------------------------ [2006-08-21 08:46:27] [EMAIL PROTECTED] connection_status and connection_aborted() rely on the function that outputs the data from the buffer. Since you do not output any data, there is no way to detect that the connection is dead. ------------------------------------------------------------------------ [2006-08-21 08:05:53] fdcxl at 163 dot com Description: ------------ connection_status function can't reflect the right information. When I click Stop button of IE, I can't get the ABORT signal. Reproduce code: --------------- conn.php <?php while(true) { sleep(1); file_put_contents("/tmp/abc", "Connection:".connection_status()."\n", FILE_APPEND); } ?> I access this page using IE with http, after about 10 seconds, I click Stop button of IE. Expected result: ---------------- The contents of /tmp/abc should be a sequence of 0s with one 1 in the end. The script stops. Actual result: -------------- I get all 0s, and script keeps running ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=38532&edit=1