diff options
author | Mike Frysinger <vapier@google.com> | 2021-04-15 19:42:46 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2021-04-15 19:42:46 +0000 |
commit | bde9d1a6b6f54b27e2404b7295365202ef061c7a (patch) | |
tree | 9725a7a3307e1cf5d42ca41233d74ec81a6afa03 | |
parent | 24b979b5d9e6e5cd16467080bb6b6af2809cd0e4 (diff) | |
parent | bfa656d5880fc887fd5eba0d2fbabb1bd8faceb8 (diff) | |
download | repohooks-bde9d1a6b6f54b27e2404b7295365202ef061c7a.tar.gz |
utils: run: fix file leakage with bad execs am: bfa656d588
Original change: https://android-review.googlesource.com/c/platform/tools/repohooks/+/1675673
Change-Id: I3c43b2c82244555e4f3c2e389fc253beded24c13
-rw-r--r-- | rh/utils.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/rh/utils.py b/rh/utils.py index 4d17bb8..96512ed 100644 --- a/rh/utils.py +++ b/rh/utils.py @@ -416,6 +416,12 @@ def run(cmd, redirect_stdout=False, redirect_stderr=False, cwd=None, input=None, stdout=ensure_text(result.stdout), stderr=ensure_text(result.stderr)) except OSError as e: + # Avoid leaking tempfiles. + if popen_stdout is not None: + popen_stdout.close() + if popen_stderr is not None: + popen_stderr.close() + estr = str(e) if e.errno == errno.EACCES: estr += '; does the program need `chmod a+x`?' |