summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Action.py
diff options
context:
space:
mode:
authorMathew Robinson <chasinglogic@gmail.com>2019-06-03 17:44:11 (GMT)
committerMathew Robinson <chasinglogic@gmail.com>2019-06-10 17:28:55 (GMT)
commit25e993fed6a759758348dea8293ea000c3bf12ec (patch)
tree7ce44d338d1138e8037dfe651b93c1c83877fd7a /src/engine/SCons/Action.py
parent6d5d4d70e8e814465405c5ea2e6901deefddcdaa (diff)
downloadSCons-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.py7
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):