bitbake: hob: populate error_msg when hob receives a CommandFailed event
authorCristiana Voicu <cristiana.voicu@intel.com>
Fri, 1 Nov 2013 09:18:45 +0000 (11:18 +0200)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 1 Nov 2013 17:59:31 +0000 (17:59 +0000)
When Hob receives a bb.command.CommandFailed event, it doesn't show any error,
because the error_msg is empty. If so, it is hard to detect the issue, because
Hob continues to run till it blocks because of an information gap.

[YOCTO #5097]
(Bitbake rev: a5abd1826f34e6a7eefa837620b846e9b62ae758)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
bitbake/lib/bb/ui/crumbs/hobeventhandler.py

index 393c258..817f638 100644 (file)
@@ -98,6 +98,7 @@ class HobHandler(gobject.GObject):
 
         self.server = server
         self.error_msg = ""
+        self.lastCommand = ""
         self.initcmd = None
         self.parsing = False
 
@@ -112,6 +113,7 @@ class HobHandler(gobject.GObject):
             self.generating = False
 
     def runCommand(self, commandline):
+        self.lastCommand = commandline[0]
         try:
             result, error = self.server.runCommand(commandline)
             if error:
@@ -251,6 +253,10 @@ class HobHandler(gobject.GObject):
             self.current_phase = None
             self.run_next_command()
         elif isinstance(event, bb.command.CommandFailed):
+            if self.error_msg == "":
+                self.error_msg = "The command \"" + self.lastCommand
+                self.error_msg += "\" was sent to bitbake server but it failed. Please"
+                self.error_msg += " check the code executed by this command in bitbake."
             self.commands_async = []
             self.display_error()
         elif isinstance(event, (bb.event.ParseStarted,