summaryrefslogtreecommitdiff
path: root/comms
diff options
context:
space:
mode:
authorPeter Wemm <peter@FreeBSD.org>1998-06-28 14:28:26 +0000
committerPeter Wemm <peter@FreeBSD.org>1998-06-28 14:28:26 +0000
commit406c65e0f2f537d0581ddaac0665633d099522fd (patch)
tree7ee1049f6925e41f00212e324b721c5c964331b1 /comms
parentInput 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-ac9
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)) {