diff options
author | Markus Fischer <mfischer@php.net> | 2002-05-01 07:21:50 +0000 |
---|---|---|
committer | Markus Fischer <mfischer@php.net> | 2002-05-01 07:21:50 +0000 |
commit | 1784f408bc128794a8b01e6b7177df26c43951a6 (patch) | |
tree | 500f35d885c4c543f6a2e03c391b3083b9a397f2 | |
parent | 811b353f22d19ec3764143ea1b5dc4c6eb262d17 (diff) | |
download | php-git-1784f408bc128794a8b01e6b7177df26c43951a6.tar.gz |
- MFH fix for socket_select() and some minor memory leak; NEWS entry follows.
-rw-r--r-- | ext/sockets/sockets.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/ext/sockets/sockets.c b/ext/sockets/sockets.c index 93a76292c5..91860566a6 100644 --- a/ext/sockets/sockets.c +++ b/ext/sockets/sockets.c @@ -97,6 +97,9 @@ static int le_iov; static int le_socket; #define le_socket_name "Socket" +static unsigned char first_through_third_args_force_ref[] = +{3, BYREF_FORCE, BYREF_FORCE, BYREF_FORCE}; + static unsigned char second_and_third_args_force_ref[] = {3, BYREF_NONE, BYREF_FORCE, BYREF_FORCE}; @@ -118,7 +121,7 @@ function_entry sockets_functions[] = { PHP_FE(socket_iovec_fetch, NULL) PHP_FE(socket_iovec_add, NULL) PHP_FE(socket_iovec_delete, NULL) - PHP_FE(socket_select, NULL) + PHP_FE(socket_select, first_through_third_args_force_ref) PHP_FE(socket_create, NULL) PHP_FE(socket_create_listen, NULL) PHP_FE(socket_create_pair, NULL) @@ -480,7 +483,8 @@ int php_sock_array_from_fd_set(zval *sock_array, fd_set *fds TSRMLS_DC) { /* Destroy old array, add new one */ zend_hash_destroy(Z_ARRVAL_P(sock_array)); - + efree(Z_ARRVAL_P(sock_array)); + zend_hash_internal_pointer_reset(new_hash); Z_ARRVAL_P(sock_array) = new_hash; |