The remaining issue in `win-askappend-multi' appears to have been
authorsimon <simon@cda61777-01e9-0310-a592-d414129be87e>
Mon, 8 Jan 2007 19:38:39 +0000 (19:38 +0000)
committersimon <simon@cda61777-01e9-0310-a592-d414129be87e>
Mon, 8 Jan 2007 19:38:39 +0000 (19:38 +0000)
commit9f7ebadc564a72c01e28dd895d88e171e7952fe7
tree05caec1d1ab8a67b9d155ff8a84c43ac921b8eb5
parentee00c99a75197e3c41bd9bb80e62c1ed9987cbd2
The remaining issue in `win-askappend-multi' appears to have been
caused by the MessageBox() internal message loop eating WinSock
FD_READ notifications, which then don't reappear afterwards because
you have to explicitly prod a socket in order to get a repeat
notification on it.

Hence, here's a piece of infrastructure which seems to sort it out:
a new winnet.c function called socket_reselect_all(), whose function
is to go through all currently active sockets and re-run
WSAAsyncSelect() on them, causing repeat notifications for anything
we might have missed. I call this after every call to MessageBox(),
and that seems to solve the problem.

(The problem was actually masked in very recent revisions, probably
by the reinstatement of pending_netevent in r7071. However, I don't
believe that was a complete fix. This should be.)

git-svn-id: svn://svn.tartarus.org/sgt/putty@7077 cda61777-01e9-0310-a592-d414129be87e
windows/windlg.c
windows/winnet.c
windows/winstuff.h