summaryrefslogtreecommitdiffstats
path: root/main.py
diff options
context:
space:
mode:
authorColin Cross <ccross@android.com>2015-05-13 00:04:36 -0700
committerColin Cross <ccross@android.com>2015-05-13 11:09:38 -0700
commit31a7be561ef34c134447d92a3d391b17ecd7c790 (patch)
treeafaefd046551596817595c4dbd10534461cc0d7d /main.py
parent35de228f331101ba17bbc658c3cd910e54725517 (diff)
downloadgit-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 'main.py')
0 files changed, 0 insertions, 0 deletions