[poky] [IMAGE_CREATOR 1/1] bitbake/hob: Fixed the "build again" hang.
Lianhao Lu
lianhao.lu at intel.com
Fri Jun 10 00:40:23 PDT 2011
Using gobject.threads_init() instead of gtk.gdk.threads_init(). These
two modes are conflict to each other. Using gobject.threads_init()
allows only the main thread to touch GUI(gtk) part.
Signed-off-by: Lianhao Lu <lianhao.lu at intel.com>
---
bitbake/lib/bb/ui/crumbs/hobeventhandler.py | 3 +++
bitbake/lib/bb/ui/hob.py | 5 +++--
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py
index c474491..a11e6d4 100644
--- a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py
+++ b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py
@@ -134,6 +134,9 @@ class HobHandler(gobject.GObject):
self.building = True
self.server.runCommand(["buildTargets", targets, "build"])
+ def notify_building_state(self, building):
+ self.building = building
+
def cancel_build(self):
# Note: this may not be the right way to stop an in-progress build
self.server.runCommand(["stateStop"])
diff --git a/bitbake/lib/bb/ui/hob.py b/bitbake/lib/bb/ui/hob.py
index ab6022b..46fb563 100644
--- a/bitbake/lib/bb/ui/hob.py
+++ b/bitbake/lib/bb/ui/hob.py
@@ -63,9 +63,11 @@ class MainWindow (gtk.Window):
def running_build_failed_cb(self, running_build):
# FIXME: handle this
+ self.handler.notify_building_state(False)
return
def running_build_succeeded_cb(self, running_build):
+ self.handler.notify_building_state(False)
label = gtk.Label("Build completed, start another build?")
dialog = gtk.Dialog("Build complete",
self,
@@ -76,7 +78,7 @@ class MainWindow (gtk.Window):
label.show()
response = dialog.run()
dialog.destroy()
- if not response == gtk.RESPONSE_YES:
+ if response == gtk.RESPONSE_YES:
self.model.reset() # NOTE: really?
self.nb.set_current_page(0)
return
@@ -555,7 +557,6 @@ class MainWindow (gtk.Window):
def main (server, eventHandler):
gobject.threads_init()
- gtk.gdk.threads_init()
taskmodel = TaskListModel()
handler = HobHandler(taskmodel, server)
--
1.7.0.4
More information about the poky
mailing list