diff options
Diffstat (limited to 'src/raw.c')
-rw-r--r-- | src/raw.c | 51 |
1 files changed, 26 insertions, 25 deletions
@@ -1,4 +1,4 @@ -/* +/* * raw.c: * * Copyright (c) 2008 James McKenzie <james@fishsoup.dhs.org>, @@ -8,8 +8,11 @@ static char rcsid[] = "$Id$"; -/* +/* * $Log$ + * Revision 1.6 2008/03/07 12:37:04 james + * *** empty log message *** + * * Revision 1.5 2008/03/06 21:34:09 james * *** empty log message *** * @@ -85,19 +88,18 @@ raw_terminal_read (TTY * _t, void *buf, int len) set_nonblocking (t->rfd); - do - { + do { - red = wrap_read (t->rfd, buf, len); - if (red < 0) - return -1; - if (!red) - return done; + red = wrap_read (t->rfd, buf, len); + if (red < 0) + return -1; + if (!red) + return done; - buf += red; - len -= red; - done += red; - } + buf += red; + len -= red; + done += red; + } while (len); @@ -113,20 +115,19 @@ raw_terminal_write (TTY * _t, void *buf, int len) set_blocking (t->wfd); - do - { + do { - writ = wrap_write (t->wfd, buf, len); - if (writ < 0) - return -1; + writ = wrap_write (t->wfd, buf, len); + if (writ < 0) + return -1; - if (!writ) - usleep (1000); + if (!writ) + usleep (1000); - buf += writ; - len -= writ; - done += writ; - } + buf += writ; + len -= writ; + done += writ; + } while (len); @@ -162,7 +163,7 @@ terminal_new_raw (int rfd, int wfd) set_nonblocking (wfd); t->recv = raw_terminal_read; -// t->xmit = raw_terminal_write; + // t->xmit = raw_terminal_write; t->close = raw_terminal_close; t->blocked = 0; |