diff options
author | Mathew Robinson <chasinglogic@gmail.com> | 2019-06-03 17:44:11 (GMT) |
---|---|---|
committer | Mathew Robinson <chasinglogic@gmail.com> | 2019-06-10 17:28:55 (GMT) |
commit | 25e993fed6a759758348dea8293ea000c3bf12ec (patch) | |
tree | 7ce44d338d1138e8037dfe651b93c1c83877fd7a /src/engine/SCons/Action.py | |
parent | 6d5d4d70e8e814465405c5ea2e6901deefddcdaa (diff) | |
download | SCons-25e993fed6a759758348dea8293ea000c3bf12ec.zip SCons-25e993fed6a759758348dea8293ea000c3bf12ec.tar.gz SCons-25e993fed6a759758348dea8293ea000c3bf12ec.tar.bz2 |
Don't hide exceptions when command does not exist
Diffstat (limited to 'src/engine/SCons/Action.py')
-rw-r--r-- | src/engine/SCons/Action.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/engine/SCons/Action.py b/src/engine/SCons/Action.py index d1ab362..3ec8a4c 100644 --- a/src/engine/SCons/Action.py +++ b/src/engine/SCons/Action.py @@ -808,7 +808,7 @@ def _subproc(scons_env, cmd, error = 'ignore', **kw): kw['env'] = new_env try: - pobj = subprocess.Popen(cmd, **kw) + pobj = subprocess.Popen(cmd, **kw) except EnvironmentError as e: if error == 'raise': raise # return a dummy Popen instance that only returns error @@ -826,9 +826,10 @@ def _subproc(scons_env, cmd, error = 'ignore', **kw): finally: # clean up open file handles stored in parent's kw for k, v in kw.items(): - if hasattr(v, 'close'): + if inspect.ismethod(getattr(v, 'close', None)): v.close() - return pobj + + return pobj class CommandAction(_ActionAction): |