summaryrefslogtreecommitdiffstats
path: root/win
diff options
context:
space:
mode:
Diffstat (limited to 'win')
-rw-r--r--win/tclWinSock.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/win/tclWinSock.c b/win/tclWinSock.c
index ae9ba17..8f565b9 100644
--- a/win/tclWinSock.c
+++ b/win/tclWinSock.c
@@ -1239,8 +1239,8 @@ WaitForSocketEvent(
/*
* Reset WSAAsyncSelect so we have a fresh set of events pending.
- * Don't do that if we are waiting for a connect as this may ignore
- * a failed connect.
+ * Don't do that if we are waiting for a connect as we may miss
+ * a connect (bug 336441ed59).
*/
if ( 0 == (events & FD_CONNECT) ) {
@@ -2413,11 +2413,15 @@ SocketProc(
case SOCKET_SELECT:
infoPtr = (SocketInfo *) lParam;
if (wParam == SELECT) {
+ /*
+ * Start notification by windows messages on socket events
+ */
+
WSAAsyncSelect(infoPtr->socket, hwnd,
SOCKET_MESSAGE, infoPtr->selectEvents);
} else {
/*
- * Clear the selection mask
+ * UNSELECT: Clear the selection mask
*/
WSAAsyncSelect(infoPtr->socket, hwnd, 0, 0);