--- appl/telnet/telnetd/utility.c.orig Wed Jan 9 14:26:59 2002 +++ appl/telnet/telnetd/utility.c Fri Jan 11 13:10:33 2002 @@ -408,18 +408,25 @@ int netwrite(const char *buf, size_t len) { - size_t remain; + int remaining, copied; + + remaining = BUFSIZ - (nfrontp - netobuf); + while (len > 0) { + /* Free up enough space if the room is too low*/ + if ((len > BUFSIZ ? BUFSIZ : len) > remaining) { + netflush(); + remaining = BUFSIZ - (nfrontp - netobuf); + } - remain = sizeof(netobuf) - (nfrontp - netobuf); - if (remain < len) { - netflush(); - remain = sizeof(netobuf) - (nfrontp - netobuf); + /* Copy out as much as will fit */ + copied = remaining > len ? len : remaining; + memmove(nfrontp, buf, copied); + nfrontp += copied; + len -= copied; + remaining -= copied; + buf += copied; } - if (remain < len) - return 0; - memcpy(nfrontp, buf, len); - nfrontp += len; - return len; + return copied; } /* src='/~lantw44/cgit-data/cgit.png' alt='cgit logo'/> index : freebsd-ports-gnome
FreeBSD GNOME current development ports (https://github.com/freebsd/freebsd-ports-gnome)
aboutsummaryrefslogtreecommitdiffstats
path: root/x11-clocks/wmblueclock
Commit message (Expand)AuthorAgeFilesLines
* The FreeBSD x11@ and graphics team proudly presentszeising2014-04-171-1/+1
* Support stagedir.vanilla2014-01-111-5/+3
* Add NO_STAGE all over the place in preparation for the staging support (cat: ...bapt2013-09-21