mirror of git://git.musl-libc.org/musl
fix double errno-decoding in the old-kernel fallback path of pipe2
this bug seems to have caused any failure by pipe2 on such systems to set errno to 1, rather than the proper error code.
This commit is contained in:
parent
490d4a0e9e
commit
bcc20d2b94
|
@ -8,7 +8,7 @@ int pipe2(int fd[2], int flag)
|
|||
if (!flag) return syscall(SYS_pipe, fd);
|
||||
int ret = __syscall(SYS_pipe2, fd, flag);
|
||||
if (ret != -ENOSYS) return __syscall_ret(ret);
|
||||
ret = syscall(SYS_pipe, fd);
|
||||
ret = __syscall(SYS_pipe, fd);
|
||||
if (ret) return __syscall_ret(ret);
|
||||
if (flag & O_CLOEXEC) {
|
||||
fcntl(fd[0], F_SETFD, FD_CLOEXEC);
|
||||
|
|
Loading…
Reference in New Issue