rendered paste body--- qeventdispatcher_win.cpp.org 2010-10-07 23:49:29.006076200 +0200+++ qeventdispatcher_win.cpp 2010-10-08 00:16:14.177951200 +0200@@ -194,45 +194,84 @@ int maxFd = 0; + QString d_msg("WSAAsync select called");+ QString d_socknr;+ for (QMap<SOCKET, SockInfo>::iterator it = currentSockets.begin(); it != currentSockets.end(); ++it) { const SockInfo &info = it.value(); int socket = it.key(); maxFd = qMax(maxFd, socket); + d_socknr.setNum (socket, 16);+ d_msg += " 0x" + d_socknr + "<"; if ((info.ev & FD_READ) || (info.ev & FD_CLOSE) || (info.ev & FD_ACCEPT))+ { FD_SET(socket, &readS);+ d_msg += "r";+ } if ((info.ev & FD_WRITE)|| (info.ev & FD_CONNECT))+ { FD_SET(socket, &writeS);+ d_msg += "w";+ } if (info.ev & FD_OOB)- FD_SET(socket, &exS);+ {+ FD_SET(socket, &exS);+ d_msg += "x";+ }+ d_msg += ">"; } timeval timeout; timeout.tv_sec = 0; timeout.tv_usec = 50000;+ qDebug(d_msg); int result = ::select(maxFd + 1, &readS, &writeS, &exS, &timeout); if (result > 0) { HWND handle; unsigned int tmpMsg; SOCKET sock; HRESULT ret;+ d_msg = "WSAAsync select result");+ for (QMap<SOCKET, SockInfo>::const_iterator it = currentSockets.constBegin(); it != currentSockets.constEnd(); ++it) {++ QString d_flags;+ handle = (*it).handle; tmpMsg = (*it).msg; sock = it.key(); if (FD_ISSET(sock, &readS))- ret = SendMessage(handle, tmpMsg, sock, FD_READ);-+ {+ ret = SendMessage(handle, tmpMsg, sock, FD_READ);+ d_flags += "r";+ } if (FD_ISSET(sock, &writeS))+ { ret = SendMessage(handle, tmpMsg, sock, FD_WRITE);-+ d_flags += "w";+ } if (FD_ISSET(sock, &exS))- ret = SendMessage(handle, tmpMsg, sock, FD_OOB);+ {+ ret = SendMessage(handle, tmpMsg, sock, FD_OOB);+ d_flags += "x";+ }+ if (! d_flags.isEmpty())+ {+ d_socknr.setNum (socket, 16);+ d_msg += " 0x" + d_socknr + "<" + d_flags + ">";+ } }+ qDebug(d_msg);+ }+ else if (result == 0) { //timeout+ qDebug("WSAAsync select timeout");+ } else if (result < 0) {+ qDebug("WSAAsync select error %d", WSAGetLastError()); } -#ifdef QCE_ASYNC_DEBUG+#if 0 else if (result == 0) { //timeout qDebug(" WSAAsync select timeout"); } else if (result < 0) { // SocketError