improve setup_env on Windows
(real) 935a72e05be1a213a12238f522c8b35f872ecf63
This commit is contained in:
parent
1578924579
commit
ecff4846ed
16
src/main.rs
16
src/main.rs
@ -331,8 +331,20 @@ fn setup_env() {
|
|||||||
colored::control::SHOULD_COLORIZE.set_override(false);
|
colored::control::SHOULD_COLORIZE.set_override(false);
|
||||||
});
|
});
|
||||||
|
|
||||||
if let Ok(current_exe) = env::current_exe() {
|
if let Ok(system_root) = env::var("SystemRoot") {
|
||||||
env::set_current_dir(binary_path_str);
|
if let Ok(current_dir) = env::current_dir() {
|
||||||
|
if current_dir.starts_with(system_root) {
|
||||||
|
if let Ok(current_exe) = env::current_exe() {
|
||||||
|
if let Some(parent) = current_exe.parent() {
|
||||||
|
if let Err(error) = env::set_current_dir(parent) {
|
||||||
|
eprintln!("{:#?}", error);
|
||||||
|
} else {
|
||||||
|
println!("Running from the system directory. Changed working directory to the executable location.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user