summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/runqueue.py
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2014-03-19 11:29:12 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-03-19 13:48:57 +0000
commitea52b5e21b71e0731ea0b8356770691b4b93d5be (patch)
tree19de108a3464392716ded5cb50a803f644622d7c /bitbake/lib/bb/runqueue.py
parent0150bc30d3674301631c2e9b6c64e01058fd1070 (diff)
downloadopenembedded-core-contrib-ea52b5e21b71e0731ea0b8356770691b4b93d5be.tar.gz
bitbake: runqueue: Don't catch all child return codes
Catching all child exit status values is a bad idea. Setting an http sstate mirror is a great way to view that spectacularly break things. The previous change did have good code changes so don't revert those parts. (Bitbake rev: fa7ffb62d510ac1124ae7e08fa4d190a710f5b54) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/runqueue.py')
-rw-r--r--bitbake/lib/bb/runqueue.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py
index fa7a99fba1..fc6bec11f9 100644
--- a/bitbake/lib/bb/runqueue.py
+++ b/bitbake/lib/bb/runqueue.py
@@ -914,10 +914,11 @@ class RunQueue:
workerpipe.close()
def sigchild_exception(self, *args, **kwargs):
- pid = -1
- while pid:
+ for w in [self.worker, self.fakeworker]:
+ if not w:
+ continue
try:
- pid, status = os.waitpid(-1, os.WNOHANG)
+ pid, status = os.waitpid(w.pid, os.WNOHANG)
if pid != 0 and not self.teardown:
name = None
if self.worker and pid == self.worker.pid: