summaryrefslogtreecommitdiff
path: root/cli/ops/fs.rs
diff options
context:
space:
mode:
author木杉 <zhmushan@qq.com>2019-12-02 03:23:35 +0800
committerRy Dahl <ry@tinyclouds.org>2019-12-01 11:23:35 -0800
commit537c6b3ed9a783b64bec0d41260c13ac84b7feb6 (patch)
tree89517c6e42cf2a585c837b19939b59291874c98e /cli/ops/fs.rs
parent81efa9d938aa169d16e67762d336d75738375cd6 (diff)
fix realpath behavior in windows (#3425)
Diffstat (limited to 'cli/ops/fs.rs')
-rw-r--r--cli/ops/fs.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/cli/ops/fs.rs b/cli/ops/fs.rs
index 54ac1971b..c847931ab 100644
--- a/cli/ops/fs.rs
+++ b/cli/ops/fs.rs
@@ -300,7 +300,11 @@ fn op_realpath(
// corresponds to the realpath on Unix and
// CreateFile and GetFinalPathNameByHandle on Windows
let realpath = fs::canonicalize(&path)?;
- let realpath_str = realpath.to_str().unwrap().to_owned().replace("\\", "/");
+ let mut realpath_str =
+ realpath.to_str().unwrap().to_owned().replace("\\", "/");
+ if cfg!(windows) {
+ realpath_str = realpath_str.trim_start_matches("//?/").to_string();
+ }
Ok(json!(realpath_str))
})
}