ID: 22401
Updated by: sniper@php.net
Reported By: php at andyuhl dot com
-Status: Verified
+Status: Feedback
Bug Type: Output Control
Operating System: win32 only
PHP Version: 4.3.2-dev, 5.0.0b2-dev
New Comment:
Please try using this CVS snapshot:
http://snaps.php.net/php4-STABLE-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php4-win32-STABLE-latest.zip
Previous Comments:
------------------------------------------------------------------------
[2003-07-15 20:13:50] sniper@php.net
Another note: ZTS has no effect in linux, works fine even if it's
enabled.
------------------------------------------------------------------------
[2003-07-15 20:13:04] sniper@php.net
Happens only with win32. (works fine in Linux)
------------------------------------------------------------------------
[2003-04-28 13:22:20] php at andyuhl dot com
Well, something isn't working right somewhere because the windows and
linux version behave differently.
Running the updated code that I just posted, the windows version
doesn't return any output at all. It doesn't even return the error
message for timing out, which means that it is definitely doing
something to that buffer that is built up in the loop.
Additionally, the same code on linux behaves as I would expect it to.
On linux, it does process the callback function after it times out and
it outputs "callback function executed successfully."
From what you've said, now I'm not sure where the bug exists, but with
such distinctly different behavior across platforms, I'm fairly certain
it exists somewhere.
------------------------------------------------------------------------
[2003-04-26 10:16:51] helly@php.net
Shuffling code around does not change the problem. Still you are timed
out and the buffers are ignored (what is correct). What you need is an
on_timeout_callback().
------------------------------------------------------------------------
[2003-04-24 13:53:40] php at andyuhl dot com
This is still a bug! Here's a modification of my example code that
includes a line which fills the buffer before the script timeout
occurs. It still does not return the new buffer properly.
<?php
function callback($buffer) {
return "callback function executed successfully.";
}
set_time_limit(5);
ob_start("callback");
while (1) {
echo "This is output.<br>\n"; // create some output this time
}
ob_end_flush();
?>
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/22401--
Edit this bug report at http://bugs.php.net/?id=22401&edit=1