diff --git a/bitbake/lib/bb/ui/crumbs/builder.py b/bitbake/lib/bb/ui/crumbs/builder.py
index afd1d1b..4997cd4 100755
--- a/bitbake/lib/bb/ui/crumbs/builder.py
+++ b/bitbake/lib/bb/ui/crumbs/builder.py
@@ -668,7 +668,6 @@ class Builder(gtk.Window):
         elif self.current_step == self.PACKAGE_GENERATING:
             fraction = 1.0
         self.build_details_page.update_progress_bar("Build Completed: ", fraction)
-        self.handler.build_succeeded_async()
         self.stopping = False
 
     def build_failed(self):
@@ -688,7 +687,6 @@ class Builder(gtk.Window):
         self.build_details_page.update_progress_bar(message, fraction, status)
         self.build_details_page.show_back_button()
         self.build_details_page.hide_stop_button()
-        self.handler.build_failed_async()
         self.stopping = False
 
     def handler_build_succeeded_cb(self, running_build):
diff --git a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py
index 1a7427a..41ab593 100644
--- a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py
+++ b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py
@@ -81,6 +81,9 @@ class HobHandler(gobject.GObject):
         self.error_msg = ""
         self.initcmd = None
 
+        self.build.connect("build-succeeded", self.build_succeeded_cb)
+        self.build.connect("build-failed",    self.build_failed_cb)
+
     def set_busy(self):
         if not self.generating:
             self.emit("generating-data")
@@ -359,10 +362,10 @@ class HobHandler(gobject.GObject):
         self.commands_async.append(self.SUB_BUILD_IMAGE)
         self.run_next_command(self.GENERATE_IMAGE)
 
-    def build_succeeded_async(self):
+    def build_succeeded_cb(self, running_build):
         self.building = False
 
-    def build_failed_async(self):
+    def build_failed_cb(self, running_build):
         self.initcmd = None
         self.commands_async = []
         self.building = False
