aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-07-21 16:14:50 (GMT)
committerZac Medico <zmedico@gentoo.org>2011-07-21 16:14:50 (GMT)
commit02b28820ba8ea3e760110ae156c70e6ee0457048 (patch)
tree9a5f890458bd98f5a91981db2d7c6faca22e8a14
parentOptimize LinkageMapELF.findConsumers(). (diff)
downloadportage-02b28820ba8ea3e760110ae156c70e6ee0457048.zip
portage-02b28820ba8ea3e760110ae156c70e6ee0457048.tar.gz
portage-02b28820ba8ea3e760110ae156c70e6ee0457048.tar.bz2
EverythingSet: always create SLOT atoms
Before it would only include the SLOT in the atom if there were multiple slots installed. However, taht could lead to unwanted upgrades as reported in bug #338959. Therefore, always create SLOT atoms.
-rw-r--r--pym/portage/_sets/dbapi.py20
1 files changed, 6 insertions, 14 deletions
diff --git a/pym/portage/_sets/dbapi.py b/pym/portage/_sets/dbapi.py
index d32f1b7..0f238f0 100644
--- a/pym/portage/_sets/dbapi.py
+++ b/pym/portage/_sets/dbapi.py
@@ -31,20 +31,12 @@ class EverythingSet(PackageSet):
cp_list = self._db.cp_list
for cp in self._db.cp_all():
- cpv_list = cp_list(cp)
-
- if len(cpv_list) > 1:
- for cpv in cpv_list:
- slot, = aux_get(cpv, db_keys)
- atom = Atom("%s:%s" % (cp, slot))
- if self._filter:
- if self._filter(atom):
- myatoms.append(atom)
- else:
- myatoms.append(atom)
-
- else:
- atom = Atom(cp)
+ for cpv in cp_list(cp):
+ # NOTE: Create SLOT atoms even when there is only one
+ # SLOT installed, in order to avoid the possibility
+ # of unwanted upgrades as reported in bug #338959.
+ slot, = aux_get(cpv, db_keys)
+ atom = Atom("%s:%s" % (cp, slot))
if self._filter:
if self._filter(atom):
myatoms.append(atom)