+2004-12-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * Socket.cs: for Receive*/Send*, don't set the connected status to false
+ when the error is EINPROGRESS or EWOULDBLOCK.
+
2004-12-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* NetworkStream.cs: Write should ensure that writes all the contents
ret = Receive_internal (socket, buf, offset, size, flags, out error);
if (error != 0) {
- connected = false;
+ if (error != 10035 && error != 10036) // WSAEWOULDBLOCK && WSAEINPROGRESS
+ connected = false;
+
throw new SocketException (error);
}
cnt = RecvFrom_internal (socket, buf, offset, size, flags, ref sockaddr, out error);
if (error != 0) {
- connected = false;
+ if (error != 10035 && error != 10036) // WSAEWOULDBLOCK && WSAEINPROGRESS
+ connected = false;
+
throw new SocketException (error);
}
ret = Send_internal (socket, buf, offset, size, flags, out error);
if (error != 0) {
- connected = false;
+ if (error != 10035 && error != 10036) // WSAEWOULDBLOCK && WSAEINPROGRESS
+ connected = false;
+
throw new SocketException (error);
}
ret = SendTo_internal (socket, buffer, offset, size, flags, sockaddr, out error);
if (error != 0) {
- connected = false;
+ if (error != 10035 && error != 10036) // WSAEWOULDBLOCK && WSAEINPROGRESS
+ connected = false;
+
throw new SocketException (error);
}