boa (0.94.14rc21-3.1) sendfile_ENOSYS.diff

Summary

 src/pipe.c |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

    
download this patch

Patch contents

Index: boa-0.94.14rc21/src/pipe.c
===================================================================
--- boa-0.94.14rc21.orig/src/pipe.c	2007-08-08 20:03:29.000000000 -0400
+++ boa-0.94.14rc21/src/pipe.c	2007-08-08 20:03:45.000000000 -0400
@@ -215,7 +215,9 @@
 	}
 	req->ranges->start = sendfile_offset;
         if (bytes_written < 0) {
-            if (errno == EWOULDBLOCK || errno == EAGAIN) {
+	    if (errno == ENOSYS) {
+		return io_shuffle(req);
+	    } else if (errno == EWOULDBLOCK || errno == EAGAIN) {
                 return -1;          /* request blocked at the pipe level, but keep going */
             } else if (errno == EINTR) {
                 goto retrysendfile;