24 lines
735 B
Plaintext
24 lines
735 B
Plaintext
--- src/common/Dispatch/rpcbuf.C.orig Wed Oct 20 19:42:58 1999
|
|
+++ src/common/Dispatch/rpcbuf.C Wed Oct 20 19:44:12 1999
|
|
@@ -977,12 +977,20 @@
|
|
// jfasch 24 Apr 1995
|
|
int rpcbuf :: rpc_read (int fd, char* buf, int len) {
|
|
int nread ;
|
|
+#ifdef __FreeBSD__
|
|
+ while ((nread = ::read (fd, buf, len)) < 0 && errno == EINTR) ;
|
|
+#else
|
|
while ((nread = ::read (fd, buf, len)) < 0 && ::errno == EINTR) ;
|
|
+#endif
|
|
return nread ;
|
|
}
|
|
int rpcbuf :: rpc_write (int fd, const char* buf, int len) {
|
|
int nwritten ;
|
|
+#ifdef __FreeBSD__
|
|
+ while ((nwritten = ::write (fd, buf, len)) < 0 && errno == EINTR) ;
|
|
+#else
|
|
while ((nwritten = ::write (fd, buf, len)) < 0 && ::errno == EINTR) ;
|
|
+#endif
|
|
return nwritten ;
|
|
}
|
|
#endif
|