summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/fhandler_socket.cc
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2014-10-11 10:50:36 +0000
committerCorinna Vinschen <corinna@vinschen.de>2014-10-11 10:50:36 +0000
commit9f64fd80819b80513fadfe842622cf6d3853c1c0 (patch)
treee3b1bf229efe33462ad12be828e2dc6ab985a046 /winsup/cygwin/fhandler_socket.cc
parent3ab591cf71a5302ead4eaa1eeff9242717cfdcad (diff)
downloadcygnal-9f64fd80819b80513fadfe842622cf6d3853c1c0.tar.gz
cygnal-9f64fd80819b80513fadfe842622cf6d3853c1c0.tar.bz2
cygnal-9f64fd80819b80513fadfe842622cf6d3853c1c0.zip
* fhandler_socket.cc (fhandler_socket::evaluate_events): Slightly
rearrange code. Rephrase a comment.
Diffstat (limited to 'winsup/cygwin/fhandler_socket.cc')
-rw-r--r--winsup/cygwin/fhandler_socket.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/winsup/cygwin/fhandler_socket.cc b/winsup/cygwin/fhandler_socket.cc
index 0354ee246..93cfddf6a 100644
--- a/winsup/cygwin/fhandler_socket.cc
+++ b/winsup/cygwin/fhandler_socket.cc
@@ -634,15 +634,15 @@ fhandler_socket::evaluate_events (const long event_mask, long &events,
{
if (events & FD_CONNECT)
{
- int wsa_err = 0;
- if ((wsa_err = wsock_events->connect_errorcode) != 0)
+ int wsa_err = wsock_events->connect_errorcode;
+ if (wsa_err)
{
/* CV 2014-04-23: This is really weird. If you call connect
asynchronously on a socket and then select, an error like
"Connection refused" is set in the event and in the SO_ERROR
socket option. If you call connect, then dup, then select,
the error is set in the event, but not in the SO_ERROR socket
- option, even if the dup'ed socket handle refers to the same
+ option, despite the dup'ed socket handle referring to the same
socket. We're trying to workaround this problem here by
taking the connect errorcode from the event and write it back
into the SO_ERROR socket option.