--- sourceforge.net/trunk/rdesktop/tcp.c 2002/09/26 14:26:46 207 +++ sourceforge.net/trunk/rdesktop/tcp.c 2003/01/30 13:38:47 306 @@ -28,6 +28,10 @@ #include /* errno */ #include "rdesktop.h" +#ifndef INADDR_NONE +#define INADDR_NONE ((unsigned long) -1) +#endif + static int sock; static struct stream in; static struct stream out; @@ -84,7 +88,9 @@ while (length > 0) { - ui_select(sock); + if (!ui_select(sock)) + /* User quit */ + return NULL; rcvd = recv(sock, in.end, length, 0); if (rcvd == -1) @@ -112,7 +118,7 @@ { memcpy(&servaddr.sin_addr, nslookup->h_addr, sizeof(servaddr.sin_addr)); } - else if (!(servaddr.sin_addr.s_addr = inet_addr(server))) + else if ((servaddr.sin_addr.s_addr = inet_addr(server)) == INADDR_NONE) { error("%s: unable to resolve host\n", server); return False;