fix for Windows (#69)

* fix for Windows

* fix condition

* make condition only on Windows
This commit is contained in:
Dimon4eg 2019-05-13 08:21:56 +03:00 committed by Benjamin Sergeant
parent d8dc977fc1
commit 22a806ca6f
3 changed files with 6 additions and 3 deletions

View File

@ -73,7 +73,7 @@ namespace ix
struct timeval timeout;
timeout.tv_sec = timeoutMs / 1000;
timeout.tv_usec = (timeoutMs < 1000) ? 0 : 1000 * (timeoutMs % 1000);
timeout.tv_usec = 1000 * (timeoutMs % 1000);
// Compute the highest fd.
int sockfd = _sockfd;

View File

@ -223,7 +223,6 @@ namespace ix
uint32_t retries = 0;
millis duration;
ix::WebSocketInitResult status;
// Try to connect perpertually
while (true)
@ -249,7 +248,7 @@ namespace ix
}
// Try to connect synchronously
status = connect(_handshakeTimeoutSecs);
ix::WebSocketInitResult status = connect(_handshakeTimeoutSecs);
if (!status.success)
{

View File

@ -303,6 +303,10 @@ namespace ix
}
}
#ifdef _WIN32
if (lastingTimeoutDelayInMs <= 0) lastingTimeoutDelayInMs = 20;
#endif
// poll the socket
PollResultType pollResult = _socket->poll(lastingTimeoutDelayInMs);