diff --git a/src/mount/redox/scheme.rs b/src/mount/redox/scheme.rs index 8eccfd24b2..4b3e4e3c98 100644 --- a/src/mount/redox/scheme.rs +++ b/src/mount/redox/scheme.rs @@ -146,7 +146,9 @@ impl<'sock, D: Disk> FileScheme<'sock, D> { } redox_path.to_reference() } - RedoxStr::Relative(redox_reference) => working_dir.join_checked(redox_reference), + RedoxStr::Relative(redox_reference) => { + working_dir.join_checked(redox_reference).canonical() + } }; nodes.clear(); @@ -542,7 +544,7 @@ pub fn resolve_path<'a, 'b, D: Disk>( ) -> Result> { let dirpath = RedoxReference::new(dir.path()); let dirpath = dirpath.ok_or(Error::new(ENOENT))?; - Ok(dirpath.join_checked(path)) + Ok(dirpath.join_checked(path).canonical()) } impl<'sock, D: Disk> SchemeSync for FileScheme<'sock, D> {