summaryrefslogblamecommitdiff
path: root/multimedia/transcode/files/patch-import:ioaux.c
blob: c7d69cc3dcbfbc4f4720eb7d065f8c4689bba34e (plain) (tree)


































                                                
--- import/ioaux.c.orig	Thu Mar 27 19:14:55 2003
+++ import/ioaux.c	Thu Mar 27 19:17:21 2003
@@ -36,8 +36,14 @@
    while (r < len) {
       n = read (fd, buf + r, len - r);
 
-      if (n <= 0)
-	  return r;
+	  if (n == 0)
+		break;
+	  if (n < 0) {
+		if (errno == EINTR)
+		  continue;
+		else
+		  break;
+	  } 
       r += n;
    }
 
@@ -51,9 +57,12 @@
 
    while (r < len) {
       n = write (fd, buf + r, len - r);
-      if (n < 0)
-         return n;
-      
+      if (n < 0) {
+		if (errno == EINTR)
+		  continue;
+		else
+		  break;
+	  }
       r += n;
    }
    return r;