diff options
-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 bafd832a67..d1de7572d7 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: |
@@ -1609,10 +1609,13 @@ class CookerParser(object): | |||
1609 | self.parser_quit.put(None) | 1609 | self.parser_quit.put(None) |
1610 | 1610 | ||
1611 | self.jobs.cancel_join_thread() | 1611 | self.jobs.cancel_join_thread() |
1612 | sys.exit(1) | ||
1613 | 1612 | ||
1614 | for process in self.processes: | 1613 | for process in self.processes: |
1615 | process.join() | 1614 | if force: |
1615 | process.join(.1) | ||
1616 | process.terminate() | ||
1617 | else: | ||
1618 | process.join() | ||
1616 | self.feeder.join() | 1619 | self.feeder.join() |
1617 | 1620 | ||
1618 | sync = threading.Thread(target=self.bb_cache.sync) | 1621 | sync = threading.Thread(target=self.bb_cache.sync) |