diff options
Diffstat (limited to 'bitbake/lib')
-rw-r--r-- | bitbake/lib/bb/cooker.py | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index dea0aadbee..4a4dc385a3 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py | |||
@@ -1175,7 +1175,7 @@ class BBCooker: | |||
1175 | return | 1175 | return |
1176 | 1176 | ||
1177 | if self.state in (state.shutdown, state.stop): | 1177 | if self.state in (state.shutdown, state.stop): |
1178 | self.parser.shutdown(clean=False) | 1178 | self.parser.shutdown(clean=False, force = True) |
1179 | sys.exit(1) | 1179 | sys.exit(1) |
1180 | 1180 | ||
1181 | if self.state != state.parsing: | 1181 | if self.state != state.parsing: |
@@ -1608,10 +1608,13 @@ class CookerParser(object): | |||
1608 | self.parser_quit.put(None) | 1608 | self.parser_quit.put(None) |
1609 | 1609 | ||
1610 | self.jobs.cancel_join_thread() | 1610 | self.jobs.cancel_join_thread() |
1611 | sys.exit(1) | ||
1612 | 1611 | ||
1613 | for process in self.processes: | 1612 | for process in self.processes: |
1614 | process.join() | 1613 | if force: |
1614 | process.join(.1) | ||
1615 | process.terminate() | ||
1616 | else: | ||
1617 | process.join() | ||
1615 | self.feeder.join() | 1618 | self.feeder.join() |
1616 | 1619 | ||
1617 | sync = threading.Thread(target=self.bb_cache.sync) | 1620 | sync = threading.Thread(target=self.bb_cache.sync) |