Mercurial > hg
changeset 19406:3185b347ae98
worker: check problem state correctly (issue3982)
If a large update triggered an abort, it was possible for the main
thread to still update the dirstate.
This fix is incomplete, as the failing worker now doesn't generate a
proper error message. This is difficult in the fork-based framework,
which relies on exceptions propagating to the top of the dispatcher
for formatting.
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Tue, 16 Jul 2013 11:53:53 -0500 |
parents | 447332970d7b |
children | ce3d1cf957f8 |
files | mercurial/worker.py |
diffstat | 1 files changed, 1 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/worker.py Tue Jul 16 11:18:16 2013 -0500 +++ b/mercurial/worker.py Tue Jul 16 11:53:53 2013 -0500 @@ -109,7 +109,7 @@ def waitforworkers(): for _ in pids: st = _exitstatus(os.wait()[1]) - if st and not problem: + if st and not problem[0]: problem[0] = st killworkers() t = threading.Thread(target=waitforworkers)