summaryrefslogtreecommitdiffstats
path: root/unix
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2012-05-03 18:28:11 (GMT)
committerdgp <dgp@users.sourceforge.net>2012-05-03 18:28:11 (GMT)
commit657c0cf4897b8ee11f1138b800a014c1461bc20d (patch)
tree81f592975b9dc8fda20e9ef9f92f9388262941a6 /unix
parentf693213b4dade6f73baf86ae13b2129be2ed0ad1 (diff)
downloadtcl-657c0cf4897b8ee11f1138b800a014c1461bc20d.zip
tcl-657c0cf4897b8ee11f1138b800a014c1461bc20d.tar.gz
tcl-657c0cf4897b8ee11f1138b800a014c1461bc20d.tar.bz2
3428753 Fix [socket -async] connections that manage to connect synchronously.
Diffstat (limited to 'unix')
-rw-r--r--unix/tclUnixSock.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/unix/tclUnixSock.c b/unix/tclUnixSock.c
index 8c94e7f..04cfe66 100644
--- a/unix/tclUnixSock.c
+++ b/unix/tclUnixSock.c
@@ -1030,7 +1030,8 @@ CreateClientSocket(
state->status = status;
}
if (status == 0) {
- goto out;
+ CLEAR_BITS(state->flags, TCP_ASYNC_CONNECT);
+ goto out;
}
}
}
@@ -1041,7 +1042,6 @@ out:
/*
* An asynchonous connection has finally succeeded or failed.
*/
- CLEAR_BITS(state->flags, TCP_ASYNC_CONNECT);
TcpWatchProc(state, state->filehandlers);
TclUnixSetBlockingMode(state->fds.fd, state->cachedBlocking);