summaryrefslogtreecommitdiffstats
path: root/pym
diff options
context:
space:
mode:
Diffstat (limited to 'pym')
-rw-r--r--pym/portage/__init__.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py
index dfbe70fc2..c10749368 100644
--- a/pym/portage/__init__.py
+++ b/pym/portage/__init__.py
@@ -1904,9 +1904,15 @@ class config(object):
self.puse = ""
cpdict = self.pusedict.get(cp)
if cpdict:
- self.pusekey = best_match_to_list(cpv_slot, cpdict.keys())
- if self.pusekey:
- self.puse = " ".join(cpdict[self.pusekey])
+ keys = cpdict.keys()
+ while keys:
+ self.pusekey = best_match_to_list(cpv_slot, keys)
+ if self.pusekey:
+ keys.remove(self.pusekey)
+ self.puse += " "+" ".join(cpdict[self.pusekey])
+ else:
+ break
+ del keys
if oldpuse != self.puse:
has_changed = True
self.configdict["pkg"]["PKGUSE"] = self.puse[:] # For saving to PUSE file