diff options
| author | beetrees <b@beetr.ee> | 2022-09-04 10:22:36 +0100 |
|---|---|---|
| committer | beetrees <b@beetr.ee> | 2022-09-04 10:22:36 +0100 |
| commit | 0e0756cf0d1b55f3de4815088276a584e2c31f14 (patch) | |
| tree | 201d9606326639c668cb7069c1ac620b70310b5a | |
| parent | c2d140bd36e7fcdc894b7c342fd81a63fdd66373 (diff) | |
| download | rust-0e0756cf0d1b55f3de4815088276a584e2c31f14.tar.gz rust-0e0756cf0d1b55f3de4815088276a584e2c31f14.zip | |
Don't duplicate file descriptors into stdio fds
| -rw-r--r-- | library/std/src/os/fd/owned.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/library/std/src/os/fd/owned.rs b/library/std/src/os/fd/owned.rs index a463bc41db7..71e33fb9ed8 100644 --- a/library/std/src/os/fd/owned.rs +++ b/library/std/src/os/fd/owned.rs @@ -104,7 +104,8 @@ impl BorrowedFd<'_> { #[cfg(target_os = "espidf")] let cmd = libc::F_DUPFD; - let fd = cvt(unsafe { libc::fcntl(self.as_raw_fd(), cmd, 0) })?; + // Avoid using file descriptors below 3 as they are used for stdio + let fd = cvt(unsafe { libc::fcntl(self.as_raw_fd(), cmd, 3) })?; Ok(unsafe { OwnedFd::from_raw_fd(fd) }) } |
