summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoshua Lock <josh@linux.intel.com>2011-07-20 16:51:21 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-07-26 20:15:48 +0100
commitb169dadb5fbf823a31140e28242c7d542b46f753 (patch)
treee7e64a0ef70631e7758c8e5cb2571a8843f502ad
parentc884b52dd0b790d6e3686be4260a3cceff8846bd (diff)
downloadast2050-yocto-poky-b169dadb5fbf823a31140e28242c7d542b46f753.zip
ast2050-yocto-poky-b169dadb5fbf823a31140e28242c7d542b46f753.tar.gz
ui/crumbs/tasklistmodel: handle items added in by base image being removed
When building an image based on an existing image we need to correctly handle removals from that images package set. Do so by testing if any of the items brought in by the base image are removed and, if so, building an image from scratch with all of the selected packages included. Fixes [YOCTO #1232] (Bitbake rev: 812ead4900714545850698d8ce29194f4ee8db0e) Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--bitbake/lib/bb/ui/crumbs/tasklistmodel.py16
1 files changed, 15 insertions, 1 deletions
diff --git a/bitbake/lib/bb/ui/crumbs/tasklistmodel.py b/bitbake/lib/bb/ui/crumbs/tasklistmodel.py
index 36a5673..e6af74f 100644
--- a/bitbake/lib/bb/ui/crumbs/tasklistmodel.py
+++ b/bitbake/lib/bb/ui/crumbs/tasklistmodel.py
@@ -495,9 +495,23 @@ class TaskListModel(gtk.ListStore):
it = self.contents.iter_next(it)
return userpkgs, allpkgs
+ def image_contents_removed(self):
+ it = self.get_iter_first()
+ while it:
+ sel = self.get_value(it, self.COL_INC)
+ img = self.get_value(it, self.COL_IMG)
+ if img and not sel:
+ return True
+ it = self.iter_next(it)
+ return False
+
def get_build_rep(self):
userpkgs, allpkgs = self.get_selected_packages()
- image = self.selected_image
+ # If base image contents have been removed start from an empty rootfs
+ if not self.selected_image or self.image_contents_removed():
+ image = "empty"
+ else:
+ image = self.selected_image
return BuildRep(" ".join(userpkgs), " ".join(allpkgs), image)
OpenPOWER on IntegriCloud