]> git.sesse.net Git - vlc/blobdiff - modules/stream_filter/decomp.c
decomp: fallback to write() if Linux vmsplice returns ENOSYS
[vlc] / modules / stream_filter / decomp.c
index f89d16ddc4d58c22b2c193c3e084d4deac6ccc3f..7ec7b512d02cb5ee0fa22ad2d5bee7a8fe7392ad 100644 (file)
@@ -120,9 +120,9 @@ static void *Thread (void *data)
                 struct iovec iov = { buf + i, (len - i) & ~page_mask, };
                 j = vmsplice (fd, &iov, 1, SPLICE_F_GIFT);
             }
-#else
-            j = write (fd, buf + i, len - i);
+            if (j == -1 && errno == ENOSYS) /* vmsplice() not supported */
 #endif
+            j = write (fd, buf + i, len - i);
             if (j <= 0)
             {
                 if (j == 0)