2 Oct 2009 00:56
RE: [PHP-DEV] Fix for 49148 (combination of stream_get_line and fseek does not work correctly)
Garrett Serack <garretts <at> microsoft.com>
2009-10-01 22:56:50 GMT
2009-10-01 22:56:50 GMT
I've updated my patch to return null on EOF.
Index: streams/streams.c
===================================================================
--- streams/streams.c (revision 289073)
+++ streams/streams.c (working copy)
<at> <at> -890,6 +890,9 <at> <at>
size_t seek_len;
seek_len = stream->writepos - stream->readpos;
+ if(!seek_len)
+ return FALSE;
+
if (seek_len > maxlen) {
seek_len = maxlen;
}
<at> <at> -901,10 +904,7 <at> <at>
}
if (!e) {
- if (seek_len < maxlen && !stream->eof) {
- return NULL;
- }
- toread = maxlen;
+ toread = (seek_len < maxlen) ? seek_len : maxlen;
} else {
toread = e - (char *) stream->readbuf - stream->readpos;
skip = 1;
And the test script for it:
(Continue reading)
RSS Feed