GUACAMOLE-325: Use recv() on Windows platforms.
Project: http://git-wip-us.apache.org/repos/asf/incubator-guacamole-server/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-guacamole-server/commit/1c404d18 Tree: http://git-wip-us.apache.org/repos/asf/incubator-guacamole-server/tree/1c404d18 Diff: http://git-wip-us.apache.org/repos/asf/incubator-guacamole-server/diff/1c404d18 Branch: refs/heads/master Commit: 1c404d188189039064d6f29f75076b2931ac9793 Parents: 944857d Author: Michael Jumper <mjum...@apache.org> Authored: Sun Jun 11 13:06:46 2017 -0700 Committer: Michael Jumper <mjum...@apache.org> Committed: Wed Jul 5 20:55:02 2017 -0700 ---------------------------------------------------------------------- src/libguac/socket-fd.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-guacamole-server/blob/1c404d18/src/libguac/socket-fd.c ---------------------------------------------------------------------- diff --git a/src/libguac/socket-fd.c b/src/libguac/socket-fd.c index f806b87..b12173d 100644 --- a/src/libguac/socket-fd.c +++ b/src/libguac/socket-fd.c @@ -146,8 +146,15 @@ static ssize_t guac_socket_fd_read_handler(guac_socket* socket, guac_socket_fd_data* data = (guac_socket_fd_data*) socket->data; - /* Read from socket */ - int retval = read(data->fd, buf, count); + int retval; + +#ifdef __MINGW32__ + /* MINGW32 WINSOCK only works with recv() */ + retval = recv(data->fd, buf, count, 0); +#else + /* Use read() for all other platforms */ + retval = read(data->fd, buf, count); +#endif /* Record errors in guac_error */ if (retval < 0) {