ID: 41280 Updated by: [EMAIL PROTECTED] Reported By: wimroffel at planet dot nl -Status: Open +Status: Feedback Bug Type: Filesystem function related Operating System: Windows XP PHP Version: 5.2.2 New Comment:
>And then it stopped for me. I am unaware when PHP crashes and >I never see a cancel button that I could press. Well, then there are no crashes and you are wrong. >What I did find find in other experiments was that even when all >output is echoed at once the data is sometimes read incorrectly. "Incorrectly"? How did you compare the data? Looking on the screen? >It looks like there is some memory leak. What are you talking about? Previous Comments: ------------------------------------------------------------------------ [2007-05-04 13:09:38] wimroffel at planet dot nl I am not familiar with those debugging procedures. I tried, but I see no result. I installed MSVC6 (still had it lying somewhere from MSDN). I downloaded the debug-pack and unpacked it. I copied the files (they are all .pdb files) to both the php and php/extensions directory. And then it stopped for me. I am unaware when PHP crashes and I never see a cancel button that I could press. What I did find find in other experiments was that even when all output is echoed at once the data is sometimes read incorrectly. It looks like there is some memory leak. I tested it on two XP computers with very different setups and hardware. ------------------------------------------------------------------------ [2007-05-04 10:31:44] [EMAIL PROTECTED] Thank you for this bug report. To properly diagnose the problem, we need a backtrace to see what is happening behind the scenes. To find out how to generate a backtrace, please read http://bugs.php.net/bugs-generating-backtrace.php for *NIX and http://bugs.php.net/bugs-generating-backtrace-win32.php for Win32 Once you have generated a backtrace, please submit it to this bug report and change the status back to "Open". Thank you for helping us make PHP better. ------------------------------------------------------------------------ [2007-05-04 10:23:21] wimroffel at planet dot nl Description: ------------ While reading a local file Windows (both XP and ME) many empty reads are generated (reading from internet works much better). So you need a "while !feof" loop and cannot trust on a test on the size of $data. The killer in the attached code is the "echo $data". The problem does not happen if you collect the whole file in a variable and echo it at once. So it seems some problem with echo - probably with the data produced by an empty read. Sometimes the crash happens after only a few freads. Other times it can take a few dozen. The echo problem happens only under Windows XP and not under Windows ME. I am using Apache 2.2. Reproduce code: --------------- /* myfile.txt is a large (about 100k) local file */ $fpi = fopen("myfile.txt", "rb"); while(!feof($fpi)) /* block read the rest */ { $data = fread($fpi,4096); echo $data; } fclose($fpi); Expected result: ---------------- a reproduction of the file on screen. Actual result: -------------- The screen flickers a few times while a partial result is produced. Then you get a "Cannot find server" message. Some times the first display goes right, but the problem happens after a refresh. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=41280&edit=1