donate_cpu_lib.py: fixed potential hang in timeout handling (#3155)

This commit is contained in:
Oliver Stöneberg 2021-03-01 22:17:00 +01:00 committed by GitHub
parent fef956f3f0
commit 4b1d1ebe41
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 6 additions and 2 deletions

View File

@ -16,7 +16,7 @@ import psutil
# Version scheme (MAJOR.MINOR.PATCH) should orientate on "Semantic Versioning" https://semver.org/ # Version scheme (MAJOR.MINOR.PATCH) should orientate on "Semantic Versioning" https://semver.org/
# Every change in this script should result in increasing the version number accordingly (exceptions may be cosmetic # Every change in this script should result in increasing the version number accordingly (exceptions may be cosmetic
# changes) # changes)
CLIENT_VERSION = "1.3.9" CLIENT_VERSION = "1.3.10"
# Timeout for analysis with Cppcheck in seconds # Timeout for analysis with Cppcheck in seconds
CPPCHECK_TIMEOUT = 30 * 60 CPPCHECK_TIMEOUT = 30 * 60
@ -269,7 +269,11 @@ def run_command(cmd):
if len(child_procs) > 0: if len(child_procs) > 0:
for child in child_procs: for child in child_procs:
child.terminate() child.terminate()
comm = p.communicate() try:
# call with timeout since it might get stuck e.g. gcc-arm-none-eabi
comm = p.communicate(timeout=5)
except subprocess.TimeoutExpired:
pass
p = None p = None
finally: finally:
if p: if p: