summaryrefslogtreecommitdiff
path: root/devel/ddd/files/patch-TTYAgent.C
diff options
context:
space:
mode:
authorDavid E. O'Brien <obrien@FreeBSD.org>2000-09-25 05:24:55 +0000
committerDavid E. O'Brien <obrien@FreeBSD.org>2000-09-25 05:24:55 +0000
commit57754ba65d94c10da517d1aa94507ac1639823f3 (patch)
treeea9e50b74772893c8c1d73313116e1d921c72e34 /devel/ddd/files/patch-TTYAgent.C
parentUpdate WWW: (diff)
Fix an annoying (but apparently benign) error dialog that seems to be a
result of some changes Luoqi Chen made to src/sys/kern/tty_pty.c at revs 1.58 and 1.59, apparently to resolve some sort of race condition. (Search for EAGAIN in that file if you'd like to see). Submitted by: W Gerald Hicks <jhix@mindspring.com>
Diffstat (limited to 'devel/ddd/files/patch-TTYAgent.C')
-rw-r--r--devel/ddd/files/patch-TTYAgent.C22
1 files changed, 22 insertions, 0 deletions
diff --git a/devel/ddd/files/patch-TTYAgent.C b/devel/ddd/files/patch-TTYAgent.C
new file mode 100644
index 000000000000..2bc5c9083cdb
--- /dev/null
+++ b/devel/ddd/files/patch-TTYAgent.C
@@ -0,0 +1,22 @@
+--- ddd/TTYAgent.C.orig Thu Aug 19 04:27:58 1999
++++ ddd/TTYAgent.C Sun Aug 27 02:37:48 2000
+@@ -697,8 +697,19 @@
+ }
+ else
+ {
++#if !defined(__FreeBSD__)
+ if (fcntl(master, F_SETFL, flags | O_NONBLOCK) == -1)
+ _raiseIOWarning("cannot set file to non-blocking mode");
++#else
++ do {
++ if(fcntl(master, F_SETFL, flags | O_NONBLOCK) != -1)
++ break;
++ else if(errno == EAGAIN)
++ sleep(1);
++ else
++ _raiseIOWarning("cannot set file to non-blocking mode");
++ } while(errno == EAGAIN);
++#endif
+ }
+ #endif
+