diff options
author | Colin Cross <ccross@android.com> | 2015-05-13 00:04:36 -0700 |
---|---|---|
committer | Colin Cross <ccross@android.com> | 2015-05-13 11:09:38 -0700 |
commit | 31a7be561ef34c134447d92a3d391b17ecd7c790 (patch) | |
tree | afaefd046551596817595c4dbd10534461cc0d7d /manifest_xml.py | |
parent | 35de228f331101ba17bbc658c3cd910e54725517 (diff) | |
download | git-repo-31a7be561ef34c134447d92a3d391b17ecd7c790.tar.gz |
Catch exceptions in project list generator
If the generator that produces per-project worker arguments raises an
exception it triggers python bug http://bugs.python.org/issue8296.
Rewrite the generator expression as a generator function, and catch
Exceptions and KeyboardInterrupts to end the iteration.
Also add a pool worker initializer to disable SIGINT to prevent
KeyboardInterrupts inside multiprocessing.Pool in the worker threads
causing the same problem.
Fixes easy-to-reproduce hangs when hitting ctrl-c during
repo forall -c echo
Change-Id: Ie4a65b3e1e07a64ed6bb6ff20f3912c4326718ca
Diffstat (limited to 'manifest_xml.py')
0 files changed, 0 insertions, 0 deletions