]> granicus.if.org Git - xz/commitdiff
Revert "xz: Use pipe2() if available."
authorLasse Collin <lasse.collin@tukaani.org>
Mon, 20 Apr 2015 16:59:18 +0000 (19:59 +0300)
committerLasse Collin <lasse.collin@tukaani.org>
Mon, 20 Apr 2015 16:59:18 +0000 (19:59 +0300)
This reverts commit 7a11c4a8e5e15f13d5fa59233b3172e65428efdd.
It is a problem when libc has pipe2() but the kernel is too
old to have pipe2() and thus pipe2() fails. In xz it's pointless
to have a fallback for non-functioning pipe2(); it's better to
avoid pipe2() completely.

Thanks to Michael Fox for the bug report.

configure.ac
src/xz/file_io.c

index c8fdb5e4127e58385cbd0953556f478f304e6f8c..0efaaecc64eef9bafe71cdde4dfdd6dd675fdcd4 100644 (file)
@@ -626,8 +626,8 @@ gl_GETOPT
 # Find the best function to set timestamps.
 AC_CHECK_FUNCS([futimens futimes futimesat utimes utime], [break])
 
-# These are nice to have but not mandatory.
-AC_CHECK_FUNCS([posix_fadvise pipe2])
+# This is nice to have but not mandatory.
+AC_CHECK_FUNCS([posix_fadvise])
 
 TUKLIB_PROGNAME
 TUKLIB_INTEGER
index 20f512a25a9973b23fae73c691878a3b87dc709e..9bd515ddc894455aff411f1f6783e6160ed51bc3 100644 (file)
@@ -82,13 +82,7 @@ io_init(void)
        // we are root.
        warn_fchown = geteuid() == 0;
 
-       // Create a pipe for the self-pipe trick. If pipe2() is available,
-       // we can avoid the fcntl() calls.
-#      ifdef HAVE_PIPE2
-       if (pipe2(user_abort_pipe, O_NONBLOCK))
-               message_fatal(_("Error creating a pipe: %s"),
-                               strerror(errno));
-#      else
+       // Create a pipe for the self-pipe trick.
        if (pipe(user_abort_pipe))
                message_fatal(_("Error creating a pipe: %s"),
                                strerror(errno));
@@ -101,7 +95,6 @@ io_init(void)
                        message_fatal(_("Error creating a pipe: %s"),
                                        strerror(errno));
        }
-#      endif
 #endif
 
 #ifdef __DJGPP__