bitbake: command: Fix command complete event ordering

The command complete event triggers the UI to start new commands.
We should send this once we've cleaned up existing commands since
on very slow systems, this could otherwise cause failures. There
is a 30s timeout on incomming commands but slow systems have been
known to hit this on poorly configured I setups.

(Bitbake rev: d202298b3d989c39bc532b69c410e2e78b082a11)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie
2025-03-10 14:56:38 +00:00
parent ec166484a2
commit ad09c355d1

View File

@@ -143,14 +143,14 @@ class Command:
return bb.server.process.idleFinish(traceback.format_exc()) return bb.server.process.idleFinish(traceback.format_exc())
def finishAsyncCommand(self, msg=None, code=None): def finishAsyncCommand(self, msg=None, code=None):
self.cooker.finishcommand()
self.process_server.clear_async_cmd()
if msg or msg == "": if msg or msg == "":
bb.event.fire(CommandFailed(msg), self.cooker.data) bb.event.fire(CommandFailed(msg), self.cooker.data)
elif code: elif code:
bb.event.fire(CommandExit(code), self.cooker.data) bb.event.fire(CommandExit(code), self.cooker.data)
else: else:
bb.event.fire(CommandCompleted(), self.cooker.data) bb.event.fire(CommandCompleted(), self.cooker.data)
self.cooker.finishcommand()
self.process_server.clear_async_cmd()
def reset(self): def reset(self):
if self.remotedatastores: if self.remotedatastores: