diff --git a/src/libstd/sys/redox/fs.rs b/src/libstd/sys/redox/fs.rs index 0e51da711c98..12aa17becd86 100644 --- a/src/libstd/sys/redox/fs.rs +++ b/src/libstd/sys/redox/fs.rs @@ -452,9 +452,8 @@ pub fn lstat(p: &Path) -> io::Result { } pub fn canonicalize(p: &Path) -> io::Result { - let mut options = OpenOptions::new(); - options.read(true); - let file = File::open(p, &options)?; + let fd = cvt(open(p.to_str().unwrap(), libc::O_CLOEXEC | libc::O_STAT))?; + let file = File(FileDesc::new(fd)); file.path() }