diff options
author | Marius Mauch <genone@gentoo.org> | 2008-05-02 04:57:52 +0000 |
---|---|---|
committer | Marius Mauch <genone@gentoo.org> | 2008-05-02 04:57:52 +0000 |
commit | 9a253af5afa1ee8b02095cc7d8ba0670aff72a26 (patch) | |
tree | bd7168ba9ee39d40345dff9793615400d02dac7c | |
parent | 37a999b34539547395dc86c6a6e2e3095fc4f800 (diff) | |
download | portage-9a253af5afa1ee8b02095cc7d8ba0670aff72a26.tar.gz portage-9a253af5afa1ee8b02095cc7d8ba0670aff72a26.tar.bz2 portage-9a253af5afa1ee8b02095cc7d8ba0670aff72a26.zip |
properly remove sets from 'world' when unmerging
svn path=/main/trunk/; revision=10078
-rw-r--r-- | pym/_emerge/__init__.py | 2 | ||||
-rw-r--r-- | pym/portage/sets/base.py | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index 18ad9abd1..2148545ca 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -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 diff --git a/pym/portage/sets/base.py b/pym/portage/sets/base.py index d64b632f9..71547813e 100644 --- a/pym/portage/sets/base.py +++ b/pym/portage/sets/base.py @@ -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() |