diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2022-11-14 19:26:18 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-11-14 19:26:18 +0100 |
| commit | aa29a8b4c71c18f736ddf0848ff388642861a419 (patch) | |
| tree | b6e7df424610fe7c23af25b135f67be684c5cbdb /src | |
| parent | 5763fa74f0bda2fe87003360f9059e67c1b8dcf5 (diff) | |
| parent | 56dfb70d8d1103e49dfe6feb337ef1f1bb20ff88 (diff) | |
| download | rust-aa29a8b4c71c18f736ddf0848ff388642861a419.tar.gz rust-aa29a8b4c71c18f736ddf0848ff388642861a419.zip | |
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.
Diffstat (limited to 'src')
| -rw-r--r-- | src/tools/x/src/main.rs | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/tools/x/src/main.rs b/src/tools/x/src/main.rs index 9187c3551d7..02c364dabf9 100644 --- a/src/tools/x/src/main.rs +++ b/src/tools/x/src/main.rs @@ -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 |
