mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-03-03 14:31:10 +00:00
Teach Lit to catch OSError exceptions when creating a process during the
execution of a shell command. This can happen for example if the ``RUN:`` line calls a python script which can work correctly under Linux/OSX but will not work under Windows. A more useful error message is now shown rather than an unhelpful backtrace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@220227 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
10646db916
commit
559074a285
@ -144,13 +144,16 @@ def executeShCmd(cmd, cfg, cwd, results):
|
||||
named_temp_files.append(f.name)
|
||||
args[i] = f.name
|
||||
|
||||
procs.append(subprocess.Popen(args, cwd=cwd,
|
||||
executable = executable,
|
||||
stdin = stdin,
|
||||
stdout = stdout,
|
||||
stderr = stderr,
|
||||
env = cfg.environment,
|
||||
close_fds = kUseCloseFDs))
|
||||
try:
|
||||
procs.append(subprocess.Popen(args, cwd=cwd,
|
||||
executable = executable,
|
||||
stdin = stdin,
|
||||
stdout = stdout,
|
||||
stderr = stderr,
|
||||
env = cfg.environment,
|
||||
close_fds = kUseCloseFDs))
|
||||
except OSError as e:
|
||||
raise InternalShellError(j, 'Could not create process due to {}'.format(e))
|
||||
|
||||
# Immediately close stdin for any process taking stdin from us.
|
||||
if stdin == subprocess.PIPE:
|
||||
|
Loading…
x
Reference in New Issue
Block a user