From: Arnaud Le Blanc Date: Tue, 4 Nov 2008 16:45:42 +0000 (+0000) Subject: Avoids fclose() from complaining that stream_socket_pair() streams X-Git-Tag: BEFORE_HEAD_NS_CHANGE~91 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0bb5310a63535a52ebf5ffdfa3ec6229f802fbc3;p=php Avoids fclose() from complaining that stream_socket_pair() streams have not been closed --- diff --git a/ext/standard/streamsfuncs.c b/ext/standard/streamsfuncs.c index d5552a01cd..8da886aef5 100644 --- a/ext/standard/streamsfuncs.c +++ b/ext/standard/streamsfuncs.c @@ -69,6 +69,11 @@ PHP_FUNCTION(stream_socket_pair) 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)); } diff --git a/ext/standard/tests/streams/stream_socket_pair.phpt b/ext/standard/tests/streams/stream_socket_pair.phpt new file mode 100644 index 0000000000..5556d8e22c --- /dev/null +++ b/ext/standard/tests/streams/stream_socket_pair.phpt @@ -0,0 +1,22 @@ +--TEST-- +stream_socket_pair() +--SKIPIF-- + +--FILE-- + +--EXPECTF-- +array(2) { + [0]=> + resource(%d) of type (stream) + [1]=> + resource(%d) of type (stream) +} +string(3) "foo"