mercurial/worker.py
branchstable
changeset 30878 18fb3cf572b4
parent 30644 d524c88511a7
child 30882 a91c62752d08
equal deleted inserted replaced
30877:aa25989b0658 30878:18fb3cf572b4
   118                         # updated (maybe interrupted just after waitpid)
   118                         # updated (maybe interrupted just after waitpid)
   119                         pids.discard(pid)
   119                         pids.discard(pid)
   120                         break
   120                         break
   121                     else:
   121                     else:
   122                         raise
   122                         raise
   123             if p:
   123             if not p:
   124                 pids.discard(p)
   124                 # skip subsequent steps, because child process should
   125                 st = _exitstatus(st)
   125                 # be still running in this case
       
   126                 continue
       
   127             pids.discard(p)
       
   128             st = _exitstatus(st)
   126             if st and not problem[0]:
   129             if st and not problem[0]:
   127                 problem[0] = st
   130                 problem[0] = st
   128     def sigchldhandler(signum, frame):
   131     def sigchldhandler(signum, frame):
   129         waitforworkers(blocking=False)
   132         waitforworkers(blocking=False)
   130         if problem[0]:
   133         if problem[0]: