diff mbox series

[2/2] command: Fix command complete event ordering

Message ID 20250310145819.2869616-2-richard.purdie@linuxfoundation.org
State Accepted, archived
Commit d202298b3d989c39bc532b69c410e2e78b082a11
Headers show
Series [1/2] cooker: Add debug for parsing being complete | expand

Commit Message

Richard Purdie March 10, 2025, 2:58 p.m. UTC
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.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
 lib/bb/command.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff mbox series

Patch

diff --git a/lib/bb/command.py b/lib/bb/command.py
index baa7cbade1..59a979ee90 100644
--- a/lib/bb/command.py
+++ b/lib/bb/command.py
@@ -143,14 +143,14 @@  class Command:
                 return bb.server.process.idleFinish(traceback.format_exc())
 
     def finishAsyncCommand(self, msg=None, code=None):
+        self.cooker.finishcommand()
+        self.process_server.clear_async_cmd()
         if msg or msg == "":
             bb.event.fire(CommandFailed(msg), self.cooker.data)
         elif code:
             bb.event.fire(CommandExit(code), self.cooker.data)
         else:
             bb.event.fire(CommandCompleted(), self.cooker.data)
-        self.cooker.finishcommand()
-        self.process_server.clear_async_cmd()
 
     def reset(self):
         if self.remotedatastores: