diff options
author | Peter Wemm <peter@FreeBSD.org> | 1998-06-28 14:28:26 +0000 |
---|---|---|
committer | Peter Wemm <peter@FreeBSD.org> | 1998-06-28 14:28:26 +0000 |
commit | 406c65e0f2f537d0581ddaac0665633d099522fd (patch) | |
tree | 7ee1049f6925e41f00212e324b721c5c964331b1 /comms | |
parent | Input server of Japanese text (Canna+Wnn4) (diff) |
Catch a 0 return from read() on carrier loss, otherwise it spins in an
infinite loop.
Submitted by: Tor Egge <Tor.Egge@idi.ntnu.no> (ages ago)
Notes
Notes:
svn path=/head/; revision=11580
Diffstat (limited to 'comms')
-rw-r--r-- | comms/conserver/files/patch-ac | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/comms/conserver/files/patch-ac b/comms/conserver/files/patch-ac index 138896bbd677..3081ae3f0a16 100644 --- a/comms/conserver/files/patch-ac +++ b/comms/conserver/files/patch-ac @@ -1,5 +1,14 @@ --- ./conserver/group.c Sat Nov 22 20:11:49 1997 +++ ./conserver/group.c Sat Aug 23 17:19:13 1997 +@@ -406,7 +406,7 @@ + continue; + } + /* read terminal line */ +- if ((nr = read(pCEServing->fdtty, acIn, sizeof(acIn))) < 0) { ++ if ((nr = read(pCEServing->fdtty, acIn, sizeof(acIn))) <= 0) { + /* carrier lost */ + fprintf(stderr, "%s: lost carrier on %s (%s)!\n", progname, pCEServing->server, pCEServing->dfile); + #if DO_VIRTUAL @@ -750,5 +750,5 @@ CSTROUT(pCLServing->fd, "- "); if (-1 == tcsendbreak(pCEServing->fdtty, 9)) { |