diff options
author | Alon Zakai <alonzakai@gmail.com> | 2013-06-30 10:31:05 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2013-06-30 10:31:05 -0700 |
commit | 6e3a916b14d0e101efc2e7880949c81fbfe144c0 (patch) | |
tree | 7de7c744e20bac71053d0fe6a0e9e0f5b3324dac /tools | |
parent | d476e649c3fa794c88a4d30a58ac4bd33848fe92 (diff) | |
parent | 6ad00c3582044c9464f3064262af0609da2ad788 (diff) |
Merge pull request #1336 from int3/csmith
Some tweaks to make CSmith easier to setup / debug.
Diffstat (limited to 'tools')
-rw-r--r-- | tools/shared.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/tools/shared.py b/tools/shared.py index da6d3e57..776001cd 100644 --- a/tools/shared.py +++ b/tools/shared.py @@ -1379,6 +1379,17 @@ def execute(cmd, *args, **kw): logging.error('Invoking Process failed: <<< ' + cmd + ' >>>') raise +def check_execute(cmd, *args, **kw): + # TODO: use in more places. execute doesn't actually check that return values + # are nonzero + try: + kw['stderr'] = STDOUT + subprocess.check_output(cmd, *args, **kw) + logging.debug("Successfuly executed %s" % " ".join(cmd)) + except subprocess.CalledProcessError as e: + logging.error("'%s' failed with output:\n%s" % (" ".join(e.cmd), e.output)) + raise + def suffix(name): parts = name.split('.') if len(parts) > 1: |