From d807dd3e4b0ce178b5f7d74236adb69e028a8480 Mon Sep 17 00:00:00 2001 From: Wildan M Date: Tue, 7 Jul 2026 05:43:38 +0700 Subject: [PATCH] Fix following symlink --- src/mount/redox/scheme.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) 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> {