diff --git a/vl.c b/vl.c index 6c5dbc8010..b2b49e73f1 100644 --- a/vl.c +++ b/vl.c @@ -2850,6 +2850,10 @@ static CharDriverState *qemu_chr_open_tcp(const char *host_str, if (err == EINTR || err == EWOULDBLOCK) { } else if (err == EINPROGRESS) { break; +#ifdef _WIN32 + } else if (err == WSAEALREADY) { + break; +#endif } else { goto fail; } @@ -4017,6 +4021,10 @@ static int net_socket_connect_init(VLANState *vlan, const char *host_str) if (err == EINTR || err == EWOULDBLOCK) { } else if (err == EINPROGRESS) { break; +#ifdef _WIN32 + } else if (err == WSAEALREADY) { + break; +#endif } else { perror("connect"); closesocket(fd);