properly remove sets from 'world' when unmerging
authorMarius Mauch <genone@gentoo.org>
Fri, 2 May 2008 04:57:52 +0000 (04:57 -0000)
committerMarius Mauch <genone@gentoo.org>
Fri, 2 May 2008 04:57:52 +0000 (04:57 -0000)
svn path=/main/trunk/; revision=10078

pym/_emerge/__init__.py
pym/portage/sets/base.py

index 18ad9abd1c9288eb1b9a158e4fe8f2c6d2309f39..2148545caab00eda9599d0ba9e37c2f91d9f60cb 100644 (file)
@@ -5991,6 +5991,8 @@ def unmerge(root_config, myopts, unmerge_action,
                        else:
                                if clean_world:
                                        sets["world"].cleanPackage(vartree.dbapi, y)
+                                       for s in root_config.setconfig.active:
+                                               sets["world"].remove(SETPREFIX+s)
                                emergelog(xterm_titles, " >>> unmerge success: "+y)
        return 1
 
index d64b632f9d8d2691fe4e82074410df3eaf625da7..71547813e37bb135a3d19cb11fdc0d3d7b87764a 100644 (file)
@@ -183,6 +183,7 @@ class EditablePackageSet(PackageSet):
        def remove(self, atom):
                self._load()
                self._atoms.discard(atom)
+               self._nonatoms.discard(atom)
                self._updateAtomMap()
                self.write()