Kill the timer process if it doesn't properly terminate. (#1649)
Some checks failed
CodeQL / Analyze (python) (push) Has been cancelled
Build Debian package / build (push) Has been cancelled
Deploy static content to Pages / deploy (push) Has been cancelled
Build Homebrew package / build (push) Has been cancelled
Build GitHub Pages website / build (push) Has been cancelled
Run linters / lint (push) Has been cancelled
Build Pip package / build (push) Has been cancelled
Run tests / python_tests (ubuntu-22.04, 3.11) (push) Has been cancelled
Run tests / docker_tests (push) Has been cancelled
Build GitHub Pages website / deploy (push) Has been cancelled

This commit is contained in:
Nick Sweeting 2025-02-05 19:06:19 -05:00 committed by GitHub
commit 37c0ea7eba
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -152,7 +152,13 @@ class TimedProgress:
except BaseException: # lgtm [py/catch-base-exception]
pass
self.p.terminate()
self.p.join()
time.sleep(0.1)
# sometimes the timer doesn't terminate properly, then blocks at the join until
# the full time has elapsed. sending a kill tries to avoid that.
try:
self.p.kill()
except Exception:
pass
# clear whole terminal line