diff options
Diffstat (limited to 'devel/ddd/files/patch-TTYAgent.C')
| -rw-r--r-- | devel/ddd/files/patch-TTYAgent.C | 22 |
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 + |
