summaryrefslogtreecommitdiff
path: root/main/network.c
diff options
context:
space:
mode:
authorFelipe Pena <felipe@php.net>2008-10-24 10:44:43 +0000
committerFelipe Pena <felipe@php.net>2008-10-24 10:44:43 +0000
commitc96d79b2e69c732efc4005294c2aec461f662e4f (patch)
tree02f3bdcf2eb4de97a3427132f727e4c463e8bafe /main/network.c
parentff8246ff6ed39c5197dd58b7280d47731542bd9e (diff)
downloadphp-git-c96d79b2e69c732efc4005294c2aec461f662e4f.tar.gz
- MFH: Fixed bug #46082 (stream_set_blocking() can cause a crash in some circumstances)
Diffstat (limited to 'main/network.c')
-rw-r--r--main/network.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/main/network.c b/main/network.c
index d8824fd81e..ebee367317 100644
--- a/main/network.c
+++ b/main/network.c
@@ -1057,7 +1057,11 @@ PHPAPI int php_set_sock_blocking(int socketd, int block TSRMLS_DC)
/* with ioctlsocket, a non-zero sets nonblocking, a zero sets blocking */
flags = !block;
if (ioctlsocket(socketd, FIONBIO, &flags) == SOCKET_ERROR) {
- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", WSAGetLastError());
+ char *error_string;
+
+ error_string = php_socket_strerror(WSAGetLastError(), NULL, 0);
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", error_string);
+ efree(error_string);
ret = FAILURE;
}
#else