Bugzilla bug 132812: handle the EINTR error from sendfilev().
authorwtc%netscape.com
Fri, 22 Mar 2002 16:21:57 +0000
changeset 2307 879ed5860b962cff737d1f24f6e0ec770a2e20cd
parent 2306 c3cd1a3e66d3b2b89f738e2f228f8324bb60e9e1
child 2309 db693ec11be437454b95fa8eb72c76285badd299
push idunknown
push userunknown
push dateunknown
bugs132812
Bugzilla bug 132812: handle the EINTR error from sendfilev().
pr/src/pthreads/ptio.c
--- a/pr/src/pthreads/ptio.c
+++ b/pr/src/pthreads/ptio.c
@@ -1043,17 +1043,18 @@ static PRBool pt_solaris_sendfile_cont(p
     ssize_t count;
 
     count = SOLARIS_SENDFILEV(op->arg1.osfd, vec, op->arg3.amount, &xferred);
     PR_ASSERT((count == -1) || (count == xferred));
     PR_ASSERT(xferred <= op->nbytes_to_send);
     op->syserrno = errno;
 
     if (count == -1) {
-        if (op->syserrno != EWOULDBLOCK && op->syserrno != EAGAIN) {
+        if (op->syserrno != EWOULDBLOCK && op->syserrno != EAGAIN
+                && op->syserrno != EINTR) {
             op->result.code = -1;
             return PR_TRUE;
         }
         count = xferred;
     }
     
     op->result.code += count;
     if (count < op->nbytes_to_send) {