diff --git a/src/sbbs3/sexyz.c b/src/sbbs3/sexyz.c index d51fb8a57207f7a0e8f6a1111928e426f4444025..3625d62f6187f61502071fcdddc4630552838031 100644 --- a/src/sbbs3/sexyz.c +++ b/src/sbbs3/sexyz.c @@ -345,15 +345,12 @@ void send_telnet_cmd(SOCKET sock, uchar cmd, uchar opt) int recv_byte(void* unused, unsigned timeout) { int i; - long t; uchar ch; fd_set socket_set; - time_t end; struct timeval tv; static uchar telnet_cmd; static int telnet_cmdlen; - end=msclock()+(timeout*MSCLOCKS_PER_SEC); while(!terminate) { FD_ZERO(&socket_set); @@ -363,9 +360,8 @@ int recv_byte(void* unused, unsigned timeout) else #endif FD_SET(sock,&socket_set); - if((t=end-msclock())<0) t=0; - tv.tv_sec=t/((unsigned)MSCLOCKS_PER_SEC); - tv.tv_usec=(t%((unsigned)MSCLOCKS_PER_SEC))*1000; + tv.tv_sec=timeout; + tv.tv_usec=0; if((i=select(sock+1,&socket_set,NULL,NULL,&tv))<1) { if(i==SOCKET_ERROR) {