diff options
Diffstat (limited to 'src/libstd/sys/unix/fd.rs')
| -rw-r--r-- | src/libstd/sys/unix/fd.rs | 22 |
1 files changed, 6 insertions, 16 deletions
diff --git a/src/libstd/sys/unix/fd.rs b/src/libstd/sys/unix/fd.rs index 4ef09b91c25..d86c77624e8 100644 --- a/src/libstd/sys/unix/fd.rs +++ b/src/libstd/sys/unix/fd.rs @@ -59,13 +59,6 @@ impl FileDesc { debug_assert_eq!(ret, 0); } } - - pub fn unset_cloexec(&self) { - unsafe { - let ret = c::ioctl(self.fd, c::FIONCLEX); - debug_assert_eq!(ret, 0); - } - } } impl AsInner<c_int> for FileDesc { @@ -74,14 +67,11 @@ impl AsInner<c_int> for FileDesc { impl Drop for FileDesc { fn drop(&mut self) { - // closing stdio file handles makes no sense, so never do it. Also, note - // that errors are ignored when closing a file descriptor. The reason - // for this is that if an error occurs we don't actually know if the - // file descriptor was closed or not, and if we retried (for something - // like EINTR), we might close another valid file descriptor (opened - // after we closed ours. - if self.fd > libc::STDERR_FILENO { - let _ = unsafe { libc::close(self.fd) }; - } + // Note that errors are ignored when closing a file descriptor. The + // reason for this is that if an error occurs we don't actually know if + // the file descriptor was closed or not, and if we retried (for + // something like EINTR), we might close another valid file descriptor + // (opened after we closed ours. + let _ = unsafe { libc::close(self.fd) }; } } |
