Skip to content

Commit b4d49ab

Browse files
committed
on win32, search for executables with PATHEXT extension if no extension is given
1 parent d63f425 commit b4d49ab

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

graalpython/lib-python/3/subprocess.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1913,6 +1913,17 @@ def _execute_child(self, args, executable, preexec_fn, close_fds,
19131913
executable_list = tuple(
19141914
os.path.join(os.fsencode(dir), executable)
19151915
for dir in os.get_exec_path(env))
1916+
# Truffle change
1917+
if sys.platform == 'win32':
1918+
__exts = [os.fsencode(ext.lower()) for ext in os.environ.get("PATHEXT", "").split(";")]
1919+
if (b"." + executable.split(b".")[-1].lower()) not in __exts:
1920+
__new_executable_list = []
1921+
for __exe in executable_list:
1922+
__new_executable_list.append(__exe)
1923+
for __ext in __exts:
1924+
__new_executable_list.append(__exe + __ext)
1925+
executable_list = __new_executable_list
1926+
# End truffle change
19161927
fds_to_keep = set(pass_fds)
19171928
fds_to_keep.add(errpipe_write)
19181929
self.pid = _fork_exec(

0 commit comments

Comments
 (0)