lbarnaud Sat May 16 20:23:06 2009 UTC Added files: (Branch: PHP_5_3) /php-src/ext/standard/tests/streams stream_copy_to_stream_socket.phpt
Modified files: /php-src/main/streams streams.c Log: MFH: Fixed bug #48307 (stream_copy_to_stream() copies 0 bytes when $source is a socket) http://cvs.php.net/viewvc.cgi/php-src/main/streams/streams.c?r1=1.82.2.6.2.18.2.26&r2=1.82.2.6.2.18.2.27&diff_format=u Index: php-src/main/streams/streams.c diff -u php-src/main/streams/streams.c:1.82.2.6.2.18.2.26 php-src/main/streams/streams.c:1.82.2.6.2.18.2.27 --- php-src/main/streams/streams.c:1.82.2.6.2.18.2.26 Sun Apr 19 17:10:34 2009 +++ php-src/main/streams/streams.c Sat May 16 20:23:06 2009 @@ -19,7 +19,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: streams.c,v 1.82.2.6.2.18.2.26 2009/04/19 17:10:34 lbarnaud Exp $ */ +/* $Id: streams.c,v 1.82.2.6.2.18.2.27 2009/05/16 20:23:06 lbarnaud Exp $ */ #define _GNU_SOURCE #include "php.h" @@ -1322,11 +1322,8 @@ if (php_stream_stat(src, &ssbuf) == 0) { if (ssbuf.sb.st_size == 0 -#ifdef S_ISFIFO - && !S_ISFIFO(ssbuf.sb.st_mode) -#endif -#ifdef S_ISCHR - && !S_ISCHR(ssbuf.sb.st_mode) +#ifdef S_ISREG + && S_ISREG(ssbuf.sb.st_mode) #endif ) { *len = 0; http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/streams/stream_copy_to_stream_socket.phpt?view=markup&rev=1.1 Index: php-src/ext/standard/tests/streams/stream_copy_to_stream_socket.phpt +++ php-src/ext/standard/tests/streams/stream_copy_to_stream_socket.phpt --TEST-- stream_copy_to_stream() with socket as $source --SKIPIF-- <?php $sockets = @stream_socket_pair(STREAM_PF_UNIX, STREAM_SOCK_STREAM, 0); if (!$sockets) die("skip stream_socket_pair"); ?> --FILE-- <?php $sockets = stream_socket_pair(STREAM_PF_UNIX, STREAM_SOCK_STREAM, 0); $tmp = tmpfile(); fwrite($sockets[0], b"a"); stream_socket_shutdown($sockets[0], STREAM_SHUT_WR); stream_copy_to_stream($sockets[1], $tmp); fseek($tmp, 0, SEEK_SET); var_dump(stream_get_contents($tmp)); stream_copy_to_stream($sockets[1], $tmp); fseek($tmp, 0, SEEK_SET); var_dump(stream_get_contents($tmp)); ?> --EXPECT-- string(1) "a" string(1) "a" -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php