summaryrefslogtreecommitdiffstats
path: root/bitbake
diff options
context:
space:
mode:
authorCristiana Voicu <cristiana.voicu@intel.com>2013-11-01 11:18:45 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-11-01 17:59:31 +0000
commitfe3e26509da8d25fc5878f0a5d6d7ebaec54dbbf (patch)
treed731f38624880e7e41624aa5ee1fb8f81668b418 /bitbake
parentde7e6efb80e3155e74f65fbb4f1e9058ca71d1f9 (diff)
downloadpoky-fe3e26509da8d25fc5878f0a5d6d7ebaec54dbbf.tar.gz
bitbake: hob: populate error_msg when hob receives a CommandFailed event
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>
Diffstat (limited to 'bitbake')
-rw-r--r--bitbake/lib/bb/ui/crumbs/hobeventhandler.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py
index 393c258e46..817f638189 100644
--- a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py
+++ b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py
@@ -98,6 +98,7 @@ class HobHandler(gobject.GObject):
98 98
99 self.server = server 99 self.server = server
100 self.error_msg = "" 100 self.error_msg = ""
101 self.lastCommand = ""
101 self.initcmd = None 102 self.initcmd = None
102 self.parsing = False 103 self.parsing = False
103 104
@@ -112,6 +113,7 @@ class HobHandler(gobject.GObject):
112 self.generating = False 113 self.generating = False
113 114
114 def runCommand(self, commandline): 115 def runCommand(self, commandline):
116 self.lastCommand = commandline[0]
115 try: 117 try:
116 result, error = self.server.runCommand(commandline) 118 result, error = self.server.runCommand(commandline)
117 if error: 119 if error:
@@ -251,6 +253,10 @@ class HobHandler(gobject.GObject):
251 self.current_phase = None 253 self.current_phase = None
252 self.run_next_command() 254 self.run_next_command()
253 elif isinstance(event, bb.command.CommandFailed): 255 elif isinstance(event, bb.command.CommandFailed):
256 if self.error_msg == "":
257 self.error_msg = "The command \"" + self.lastCommand
258 self.error_msg += "\" was sent to bitbake server but it failed. Please"
259 self.error_msg += " check the code executed by this command in bitbake."
254 self.commands_async = [] 260 self.commands_async = []
255 self.display_error() 261 self.display_error()
256 elif isinstance(event, (bb.event.ParseStarted, 262 elif isinstance(event, (bb.event.ParseStarted,