[PHP-CVS] cvs: php-src /ext/standard/tests/file bug27508.phpt
pajoye Mon Aug 18 21:26:30 2008 UTC Modified files: /php-src/ext/standard/tests/filebug27508.phpt Log: - MFB: don't use /tmp as tmpdir and avoid endless loop when fopen or tmpnam failed http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/file/bug27508.phpt?r1=1.4r2=1.5diff_format=u Index: php-src/ext/standard/tests/file/bug27508.phpt diff -u php-src/ext/standard/tests/file/bug27508.phpt:1.4 php-src/ext/standard/tests/file/bug27508.phpt:1.5 --- php-src/ext/standard/tests/file/bug27508.phpt:1.4 Wed Feb 21 22:08:00 2007 +++ php-src/ext/standard/tests/file/bug27508.phpt Mon Aug 18 21:26:30 2008 @@ -45,9 +45,16 @@ stream_wrapper_register(myFile, FileStream) or die(Failed to register protocol); -$tn = tempnam('/tmp', 'foo'); +$tmp_dir = __DIR__; +$tn = tempnam($tmp_dir, 'foo'); +if (!$tn) { + die(tempnam failed); +} -$fp = fopen(myFile:// . urlencode((binary)$tn), w+); +$fp = fopen(myFile:// . urlencode($tn), w+); +if (!$fp) { + die(fopen failed); +} fwrite($fp, bline1\n); fwrite($fp, bline2\n); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src /ext/standard/tests/file bug27508.phpt
tony2001Wed Feb 21 22:08:00 2007 UTC Modified files: /php-src/ext/standard/tests/filebug27508.phpt Log: minor improvements http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/file/bug27508.phpt?r1=1.3r2=1.4diff_format=u Index: php-src/ext/standard/tests/file/bug27508.phpt diff -u php-src/ext/standard/tests/file/bug27508.phpt:1.3 php-src/ext/standard/tests/file/bug27508.phpt:1.4 --- php-src/ext/standard/tests/file/bug27508.phpt:1.3 Thu Nov 9 00:33:54 2006 +++ php-src/ext/standard/tests/file/bug27508.phpt Wed Feb 21 22:08:00 2007 @@ -57,12 +57,13 @@ rewind($fp); echo ftell($fp) . \n; debug_zval_dump(feof($fp)); -while (!feof($fp)) { +while ($fp !feof($fp)) { echo fgets($fp); } fclose($fp); unlink($tn); +? --EXPECT-- bool(false) refcount(1) 0 -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src /ext/standard/tests/file bug27508.phpt
tony2001Thu Nov 9 00:33:54 2006 UTC Modified files: /php-src/ext/standard/tests/filebug27508.phpt Log: fix test and prevent endless loop http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/file/bug27508.phpt?r1=1.2r2=1.3diff_format=u Index: php-src/ext/standard/tests/file/bug27508.phpt diff -u php-src/ext/standard/tests/file/bug27508.phpt:1.2 php-src/ext/standard/tests/file/bug27508.phpt:1.3 --- php-src/ext/standard/tests/file/bug27508.phpt:1.2 Thu Apr 6 19:51:36 2006 +++ php-src/ext/standard/tests/file/bug27508.phpt Thu Nov 9 00:33:54 2006 @@ -30,6 +30,9 @@ function stream_eof() { +if (!$this-fp) { +return true; +} return feof($this-fp); } @@ -44,7 +47,7 @@ $tn = tempnam('/tmp', 'foo'); -$fp = fopen(myFile:// . urlencode($tn), w+); +$fp = fopen(myFile:// . urlencode((binary)$tn), w+); fwrite($fp, bline1\n); fwrite($fp, bline2\n); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src /ext/standard/tests/file bug27508.phpt
wez Tue May 10 22:01:45 2005 EDT Added files: /php-src/ext/standard/tests/filebug27508.phpt Log: add test for bug 27508 http://cvs.php.net/co.php/php-src/ext/standard/tests/file/bug27508.phpt?r=1.1p=1 Index: php-src/ext/standard/tests/file/bug27508.phpt +++ php-src/ext/standard/tests/file/bug27508.phpt --TEST-- Bug #27508 (userspace wrappers have bogus eof indicator) --FILE-- ?php # vim:ft=php class FileStream { public $fp; function stream_open($path, $mode, $options, $opened_path) { $url = urldecode(substr($path, 9)); $this-fp = fopen($url, $mode); return true; } function stream_read($count) { return fread($this-fp, $count); } function stream_write($data) { return fwrite($this-fp, $data); } function stream_tell() { return ftell($this-fp); } function stream_eof() { return feof($this-fp); } function stream_seek($offset, $whence) { return fseek($this-fp, $offset, $whence) == 0 ? true : false; } } stream_wrapper_register(myFile, FileStream) or die(Failed to register protocol); $tn = tempnam('/tmp', 'foo'); $fp = fopen(myFile:// . urlencode($tn), w+); fwrite($fp, line1\n); fwrite($fp, line2\n); fwrite($fp, line3\n); debug_zval_dump(feof($fp)); rewind($fp); echo ftell($fp) . \n; debug_zval_dump(feof($fp)); while (!feof($fp)) { echo fgets($fp); } fclose($fp); unlink($tn); --EXPECT-- bool(false) refcount(1) 0 bool(false) refcount(1) line1 line2 line3 -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php