mirror of
https://git.yoctoproject.org/poky
synced 2026-04-22 15:32:14 +02:00
bitbake: cooker: Fix main loop starvation when parsing
When parsing, the parser isn't servicing the main loop so a Ctrl+C in the UI won't be seen on the cooker/server side. Fix this by returning when queue timeouts occur. This helps where there is a hung or slow parsing thread. (Bitbake rev: a2cde38311a51112dca5e7bb4e7feaf4e6a281b3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -2249,7 +2249,7 @@ class CookerParser(object):
|
||||
result = self.result_queue.get(timeout=0.25)
|
||||
except queue.Empty:
|
||||
empty = True
|
||||
pass
|
||||
yield None, None, None
|
||||
else:
|
||||
empty = False
|
||||
yield result
|
||||
@@ -2266,6 +2266,10 @@ class CookerParser(object):
|
||||
if isinstance(result, BaseException):
|
||||
# Turn exceptions back into exceptions
|
||||
raise result
|
||||
if parsed is None:
|
||||
# Timeout, loop back through the main loop
|
||||
return True
|
||||
|
||||
except StopIteration:
|
||||
self.shutdown()
|
||||
return False
|
||||
|
||||
Reference in New Issue
Block a user