lbarnaud Tue Nov 4 16:48:08 2008 UTC Added files: (Branch: PHP_5_2) /php-src/ext/standard/tests/streams stream_socket_pair.phpt
Modified files: /php-src/ext/standard streamsfuncs.c Log: MFH: Avoids fclose() from complaining that stream_socket_pair() streams have not been closed http://cvs.php.net/viewvc.cgi/php-src/ext/standard/streamsfuncs.c?r1=1.58.2.6.2.28&r2=1.58.2.6.2.29&diff_format=u Index: php-src/ext/standard/streamsfuncs.c diff -u php-src/ext/standard/streamsfuncs.c:1.58.2.6.2.28 php-src/ext/standard/streamsfuncs.c:1.58.2.6.2.29 --- php-src/ext/standard/streamsfuncs.c:1.58.2.6.2.28 Tue Nov 4 00:43:06 2008 +++ php-src/ext/standard/streamsfuncs.c Tue Nov 4 16:48:07 2008 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: streamsfuncs.c,v 1.58.2.6.2.28 2008/11/04 00:43:06 lbarnaud Exp $ */ +/* $Id: streamsfuncs.c,v 1.58.2.6.2.29 2008/11/04 16:48:07 lbarnaud Exp $ */ #include "php.h" #include "php_globals.h" @@ -69,6 +69,11 @@ s1 = php_stream_sock_open_from_socket(pair[0], 0); s2 = php_stream_sock_open_from_socket(pair[1], 0); + /* set the __exposed flag. + * php_stream_to_zval() does, add_next_index_resource() does not */ + php_stream_auto_cleanup(s1); + php_stream_auto_cleanup(s2); + add_next_index_resource(return_value, php_stream_get_resource_id(s1)); add_next_index_resource(return_value, php_stream_get_resource_id(s2)); } http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/streams/stream_socket_pair.phpt?view=markup&rev=1.1 Index: php-src/ext/standard/tests/streams/stream_socket_pair.phpt +++ php-src/ext/standard/tests/streams/stream_socket_pair.phpt --TEST-- stream_socket_pair() --SKIPIF-- <?php if (substr(PHP_OS, 0, 3) == 'WIN') die("skip: non windows test"); ?> --FILE-- <?php $sockets = stream_socket_pair(STREAM_PF_UNIX, STREAM_SOCK_STREAM, 0); var_dump($sockets); fwrite($sockets[0], b"foo"); var_dump(fread($sockets[1], strlen(b"foo"))); fclose($sockets[0]); ?> --EXPECTF-- array(2) { [0]=> resource(%d) of type (stream) [1]=> resource(%d) of type (stream) } string(3) "foo" -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php