Summary: If multiple iovs are passed to sendmsg, sendmsg is supposed to return the number of bytes sent if it would block, but only if the number of bytes sent is greater than 0.
Reviewed By: yfeldblum
Differential Revision:
D4099691
fbshipit-source-id:
e58fa71604966129b1fbd418c24b1bf012060428
message->msg_flags);
}
if (r == -1 || r != message->msg_iov[i].iov_len) {
+ errno = translate_wsa_error(WSAGetLastError());
+ if (WSAGetLastError() == WSAEWOULDBLOCK && bytesSent > 0) {
+ return bytesSent;
+ }
return -1;
}
bytesSent += r;