ID:               27508
 Updated by:       [EMAIL PROTECTED]
 Reported By:      adam at trachtenberg dot com
-Status:           Assigned
+Status:           Feedback
 Bug Type:         Network related
 Operating System: *
 PHP Version:      5CVS-2004-03-05
 Assigned To:      wez
 New Comment:

Please try using this CVS snapshot:

  http://snaps.php.net/php5-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php5-win32-latest.zip




Previous Comments:
------------------------------------------------------------------------

[2004-03-09 11:32:53] adam at trachtenberg dot com

Oops. Wrong file extension. Should be: 

http://www.trachtenberg.com/patches/bug27508.txt

------------------------------------------------------------------------

[2004-03-09 11:31:38] adam at trachtenberg dot com

Here's an example where the class is just a wrapper 
around fopen(), fread(), fwrite(), etc.

It's at http://www.trachtenberg.com/patches/
bug27508.php.

In PHP 4, you get:

line1
line2
line3

PHP 5 outputs no data.

------------------------------------------------------------------------

[2004-03-09 08:47:27] [EMAIL PROTECTED]

Wez, the fix didn't quite fix it.

Adam, can you please come up with a test case and send it to internals@
? (The one in manual is a bit long, could it be made any shorter?)


------------------------------------------------------------------------

[2004-03-05 16:05:11] adam at trachtenberg dot com

Description:
------------
It looks like feof() doesn't work correctly in all cases 
for user-defined streams. It seems like the class 
stream_eof() method is not being called when feof() is 
invoked in PHP.

This works correctly using 4.3.5RC3, but not PHP 5 
current CVS. It also works correctly if I do an 
fpassthru() on the file pointer and let PHP handle the 
feof() check.

Reproduce code:
---------------
See VariableStream class in the manual: 

http://us2.php.net/manual/en/function.stream-wrapper-register.php

In particular the while(!feof()) bit.

Expected result:
----------------
line1
line2
line3
string(18) "line1
line2
line3
"

(This is what I get from PHP 4.3.5RC3)

Actual result:
--------------
string(18) "line1
line2
line3
"


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=27508&edit=1

Reply via email to