diff -Nur -X no.freeciv freeciv-cvs/common/packets.c freeciv-mod/common/packets.c --- freeciv-cvs/common/packets.c Fri Mar 17 20:07:47 2000 +++ freeciv-mod/common/packets.c Fri Mar 17 22:42:51 2000 @@ -3163,22 +3163,27 @@ default: break; } -#endif if (FD_ISSET(pc->sock, &writefs)) { nblock=MIN(len-start, MAX_LEN_PACKET); if((nput=write(pc->sock, (const char *)data+start, nblock)) == -1) { -#ifdef HAVE_FCNTL_H if (errno == EWOULDBLOCK || errno == EAGAIN) { freelog(LOG_DEBUG, "EGAIN on socket write"); continue; } -#endif freelog(LOG_NORMAL, "failed writing to socket"); return -1; } start += nput; } +#else /* !HAVE_FCNTL_H */ + nblock=MIN(len-start, MAX_LEN_PACKET); + if((nput=write(pc->sock, (const char *)data+start, nblock)) == -1) { + freelog(LOG_NORMAL, "failed writing to socket"); + return -1; + } + start += nput; +#endif } return 0; }