felipe Thu Oct 30 14:36:34 2008 UTC
Modified files: (Branch: PHP_5_2)
/php-src/ext/standard streamsfuncs.c
/php-src/ext/standard/tests/streams bug46426.phpt
Log:
MFH:
- Fix the fix
- Improved test
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/streamsfuncs.c?r1=1.58.2.6.2.25&r2=1.58.2.6.2.26&diff_format=u
Index: php-src/ext/standard/streamsfuncs.c
diff -u php-src/ext/standard/streamsfuncs.c:1.58.2.6.2.25
php-src/ext/standard/streamsfuncs.c:1.58.2.6.2.26
--- php-src/ext/standard/streamsfuncs.c:1.58.2.6.2.25 Thu Oct 30 10:11:51 2008
+++ php-src/ext/standard/streamsfuncs.c Thu Oct 30 14:36:34 2008
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: streamsfuncs.c,v 1.58.2.6.2.25 2008/10/30 10:11:51 felipe Exp $ */
+/* $Id: streamsfuncs.c,v 1.58.2.6.2.26 2008/10/30 14:36:34 felipe Exp $ */
#include "php.h"
#include "php_globals.h"
@@ -406,7 +406,7 @@
php_stream_from_zval(stream, &zsrc);
- if (pos >= 0 && php_stream_seek(stream, pos, SEEK_SET) < 0) {
+ if ((pos > 0 || (pos == 0 && ZEND_NUM_ARGS() > 2)) &&
php_stream_seek(stream, pos, SEEK_SET) < 0) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Failed to seek to
position %ld in the stream", pos);
RETURN_FALSE;
}
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/streams/bug46426.phpt?r1=1.1.4.2&r2=1.1.4.3&diff_format=u
Index: php-src/ext/standard/tests/streams/bug46426.phpt
diff -u php-src/ext/standard/tests/streams/bug46426.phpt:1.1.4.2
php-src/ext/standard/tests/streams/bug46426.phpt:1.1.4.3
--- php-src/ext/standard/tests/streams/bug46426.phpt:1.1.4.2 Thu Oct 30
10:11:52 2008
+++ php-src/ext/standard/tests/streams/bug46426.phpt Thu Oct 30 14:36:34 2008
@@ -7,16 +7,28 @@
fwrite($tmp, "12345");
-echo stream_get_contents($tmp, -1, 0);
+echo stream_get_contents($tmp, 2, 1);
+echo "\n";
+echo stream_get_contents($tmp, -1);
echo "\n";
-echo stream_get_contents($tmp, -1, 1);
+echo stream_get_contents($tmp, -1, 0);
echo "\n";
echo stream_get_contents($tmp, -1, 2);
+echo "\n";
+echo stream_get_contents($tmp, 0, 0);
+echo "\n";
+echo stream_get_contents($tmp, 1, 0);
+echo "\n";
+echo stream_get_contents($tmp, -1);
@unlink($tmp);
?>
--EXPECT--
+23
+45
12345
-2345
345
+
+1
+2345
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php