diff options
Diffstat (limited to 'ext/sockets')
-rw-r--r-- | ext/sockets/sockets.c | 1 | ||||
-rw-r--r-- | ext/sockets/tests/socket_accept_failure.phpt | 12 |
2 files changed, 12 insertions, 1 deletions
diff --git a/ext/sockets/sockets.c b/ext/sockets/sockets.c index c50d8d5d71..a9d0e4b885 100644 --- a/ext/sockets/sockets.c +++ b/ext/sockets/sockets.c @@ -272,7 +272,6 @@ static int php_accept_connect(php_socket *in_sock, php_socket *out_sock, struct if (IS_INVALID_SOCKET(out_sock)) { PHP_SOCKET_ERROR(out_sock, "unable to accept incoming connection", errno); - efree(out_sock); return 0; } diff --git a/ext/sockets/tests/socket_accept_failure.phpt b/ext/sockets/tests/socket_accept_failure.phpt new file mode 100644 index 0000000000..522987469b --- /dev/null +++ b/ext/sockets/tests/socket_accept_failure.phpt @@ -0,0 +1,12 @@ +--TEST-- +socket_accept() failure +--FILE-- +<?php + +$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); +var_dump(socket_accept($socket)); + +?> +--EXPECTF-- +Warning: socket_accept(): unable to accept incoming connection [%d]: %s in %s on line %d +bool(false) |