Skip to content

Commit eb5ff17

Browse files
committed
Auto merge of #1472 - RalfJung:abs, r=RalfJung
better way to get an absolute path suggested by @matklad
2 parents b245786 + 2fbc4aa commit eb5ff17

File tree

1 file changed

+3
-15
lines changed

1 file changed

+3
-15
lines changed

cargo-miri/bin.rs

+3-15
Original file line numberDiff line numberDiff line change
@@ -257,21 +257,9 @@ fn setup(subcommand: MiriCommand) {
257257

258258
// Determine where the rust sources are located. `XARGO_RUST_SRC` env var trumps everything.
259259
let rust_src = match std::env::var_os("XARGO_RUST_SRC") {
260-
Some(val) => {
261-
let path = PathBuf::from(val);
262-
let path = path.canonicalize().unwrap_or(path);
263-
264-
// On Windows, this produces a path starting with `\\?\`, which xargo cannot deal with.
265-
// Strip that prefix; the resulting path should still be valid.
266-
#[cfg(windows)]
267-
let path = {
268-
let str = path.into_os_string().into_string()
269-
.expect("non-unicode paths are currently not supported");
270-
let str = str.strip_prefix(r"\\?\").map(String::from).unwrap_or(str);
271-
PathBuf::from(str)
272-
};
273-
274-
path
260+
Some(path) => {
261+
// Make path absolute, but not via `canonicalize` (which does not work very well on Windows).
262+
env::current_dir().unwrap().join(path)
275263
}
276264
None => {
277265
// Check for `rust-src` rustup component.

0 commit comments

Comments
 (0)