Rollup merge of #104350 - SparkyPotato:fix-x-wrapper, r=jyn514
Fix x finding Python on Windows `x` searches through the path for `{dir}/python{2|3}?`, but this fails on Windows because the appropriate path is `{dir}/python.exe`. This PR adds the expected `.exe` extension on Windows while searching.
This commit is contained in:
commit
aa29a8b4c7
@ -8,7 +8,8 @@
|
||||
//! `x.py`, in that order of preference.
|
||||
|
||||
use std::{
|
||||
env, io,
|
||||
env::{self, consts::EXE_EXTENSION},
|
||||
io,
|
||||
process::{self, Command, ExitStatus},
|
||||
};
|
||||
|
||||
@ -27,12 +28,12 @@ fn python() -> &'static str {
|
||||
|
||||
for dir in env::split_paths(&val) {
|
||||
// `python` should always take precedence over python2 / python3 if it exists
|
||||
if dir.join(PYTHON).exists() {
|
||||
if dir.join(PYTHON).with_extension(EXE_EXTENSION).exists() {
|
||||
return PYTHON;
|
||||
}
|
||||
|
||||
python2 |= dir.join(PYTHON2).exists();
|
||||
python3 |= dir.join(PYTHON3).exists();
|
||||
python2 |= dir.join(PYTHON2).with_extension(EXE_EXTENSION).exists();
|
||||
python3 |= dir.join(PYTHON3).with_extension(EXE_EXTENSION).exists();
|
||||
}
|
||||
|
||||
// try 3 before 2
|
||||
|
Loading…
Reference in New Issue
Block a user