| ... | ... | @@ -3892,21 +3892,6 @@ pub fn pipe2(flags: u32) PipeError![2]fd_t { |
| 3892 | 3892 | } |
| 3893 | 3893 | } |
| 3894 | 3894 | } |
| 3895 | | if (std.Target.current.os.tag == .haiku) { |
| 3896 | | var fds: [2]fd_t = try pipe(); |
| 3897 | | if (flags == 0) return fds; |
| 3898 | | errdefer { |
| 3899 | | close(fds[0]); |
| 3900 | | close(fds[1]); |
| 3901 | | } |
| 3902 | | for (fds) |fd| switch (errno(system.fcntl(fd, F_SETFL, flags))) { |
| 3903 | | 0 => {}, |
| 3904 | | EINVAL => unreachable, // Invalid flags |
| 3905 | | EBADF => unreachable, // Always a race condition |
| 3906 | | else => |err| return unexpectedErrno(err), |
| 3907 | | }; |
| 3908 | | return fds; |
| 3909 | | } |
| 3910 | 3895 | |
| 3911 | 3896 | const new_flags = flags & ~@as(u32, O_CLOEXEC); |
| 3912 | 3897 | // Set every other flag affecting the file status using F_SETFL. |