diff --git a/src/platform/redox/mod.rs b/src/platform/redox/mod.rs
index 36c844bc8eb6a7b54391e0f6a912e27fc57d7458..811ef9e6d99b771d451bb5536333fe61e0c31c61 100644
--- a/src/platform/redox/mod.rs
+++ b/src/platform/redox/mod.rs
@@ -840,8 +840,13 @@ impl Pal for Sys {
 
         let mut cursor = io::Cursor::new(out);
         let res = match scheme.as_ref() {
-            "file" => write!(cursor, "/{}", reference.as_ref()),
-            _ => write!(cursor, "/scheme/{}/{}", scheme.as_ref(), reference.as_ref()),
+            "file" => write!(cursor, "/{}", reference.as_ref().trim_start_matches('/')),
+            _ => write!(
+                cursor,
+                "/scheme/{}/{}",
+                scheme.as_ref(),
+                reference.as_ref().trim_start_matches('/')
+            ),
         };
         match res {
             Ok(()) => cursor.position() as ssize_t,