From 6a293985b2db589c9fae777be00d3c20ed1ec49f Mon Sep 17 00:00:00 2001 From: Kang Kai Date: Fri, 27 Jul 2012 16:38:03 +0800 Subject: bitbake: hob: deal event DiskFull Part of [Yocto #2168] When bitbake runqueue is teminated by disk monitor, it will send event DiskFull. Update to handle it. (Bitbake rev: a691de10d8b8de552628b277e78d47c607ee3a46) Signed-off-by: Kang Kai Signed-off-by: Richard Purdie --- bitbake/lib/bb/ui/crumbs/builder.py | 4 ++++ bitbake/lib/bb/ui/crumbs/runningbuild.py | 11 ++++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) (limited to 'bitbake') diff --git a/bitbake/lib/bb/ui/crumbs/builder.py b/bitbake/lib/bb/ui/crumbs/builder.py index 123608eb25..c2e7068428 100755 --- a/bitbake/lib/bb/ui/crumbs/builder.py +++ b/bitbake/lib/bb/ui/crumbs/builder.py @@ -430,6 +430,7 @@ class Builder(gtk.Window): self.handler.build.connect("build-started", self.handler_build_started_cb) self.handler.build.connect("build-succeeded", self.handler_build_succeeded_cb) self.handler.build.connect("build-failed", self.handler_build_failed_cb) + self.handler.build.connect("build-aborted", self.handler_build_aborted_cb) self.handler.build.connect("task-started", self.handler_task_started_cb) self.handler.build.connect("log-error", self.handler_build_failure_cb) self.handler.build.connect("no-provider", self.handler_no_provider_cb) @@ -920,6 +921,9 @@ class Builder(gtk.Window): def handler_build_failed_cb(self, running_build): self.build_failed() + def handler_build_aborted_cb(self, running_build): + self.build_failed() + def handler_no_provider_cb(self, running_build, msg): dialog = CrumbsMessageDialog(self, Builder.interpret_markup(msg), gtk.STOCK_DIALOG_INFO) button = dialog.add_button("Close", gtk.RESPONSE_OK) diff --git a/bitbake/lib/bb/ui/crumbs/runningbuild.py b/bitbake/lib/bb/ui/crumbs/runningbuild.py index 8cf36ee24e..0347058d7e 100644 --- a/bitbake/lib/bb/ui/crumbs/runningbuild.py +++ b/bitbake/lib/bb/ui/crumbs/runningbuild.py @@ -76,6 +76,9 @@ class RunningBuild (gobject.GObject): 'build-complete' : (gobject.SIGNAL_RUN_LAST, gobject.TYPE_NONE, ()), + 'build-aborted' : (gobject.SIGNAL_RUN_LAST, + gobject.TYPE_NONE, + ()), 'task-started' : (gobject.SIGNAL_RUN_LAST, gobject.TYPE_NONE, (gobject.TYPE_PYOBJECT,)), @@ -93,6 +96,7 @@ class RunningBuild (gobject.GObject): gobject.GObject.__init__ (self) self.model = RunningBuildModel() self.sequential = sequential + self.buildaborted = False def reset (self): self.pids_to_task.clear() @@ -274,7 +278,9 @@ class RunningBuild (gobject.GObject): 0)) # Emit the appropriate signal depending on the number of failures - if (failures >= 1): + if self.buildaborted: + self.emit ("build-aborted") + elif (failures >= 1): self.emit ("build-failed") else: self.emit ("build-succeeded") @@ -286,6 +292,9 @@ class RunningBuild (gobject.GObject): if pbar: pbar.set_text(event.msg) + elif isinstance(event, bb.event.DiskFull): + self.buildaborted = True + elif isinstance(event, bb.command.CommandFailed): if event.error.startswith("Exited with"): # If the command fails with an exit code we're done, emit the -- cgit v1.2.3-54-g00ecf