From 5b3aeb4a9f2cd2c44835170f0a65fc172b12c053 Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Thu, 22 Sep 2016 21:27:33 -0600 Subject: [PATCH] Fix path lookup --- kernel/context/context.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/context/context.rs b/kernel/context/context.rs index c06e778..9dcc10b 100644 --- a/kernel/context/context.rs +++ b/kernel/context/context.rs @@ -69,7 +69,7 @@ impl Context { cwd.clone() } else if path == b".." { cwd[..cwd[..cwd.len() - 1] - .iter().rposition(|&b| b == b'/') + .iter().rposition(|&b| b == b'/' || b == b':') .map_or(cwd.len(), |i| i + 1)] .to_vec() } else if path.starts_with(b"./") { @@ -78,7 +78,7 @@ impl Context { canon } else if path.starts_with(b"../") { let mut canon = cwd[..cwd[..cwd.len() - 1] - .iter().rposition(|&b| b == b'/') + .iter().rposition(|&b| b == b'/' || b == b':') .map_or(cwd.len(), |i| i + 1)] .to_vec(); canon.extend_from_slice(&path[3..]);