summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pym/portage.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/pym/portage.py b/pym/portage.py
index 367f43544..0c0fe13fe 100644
--- a/pym/portage.py
+++ b/pym/portage.py
@@ -6376,7 +6376,14 @@ class FetchlistDict(UserDict.DictMixin):
return pkg_key in self.keys()
def keys(self):
"""Returns keys for all packages within pkgdir"""
- return self.db.cp_list(self.cp)
+ global portdb # has the global auxdb caches
+ all_trees = portdb.porttrees
+ # This ensures that the key list comes from the correct portage tree.
+ portdb.porttrees = self.porttrees
+ mykeys = portdb.cp_list(self.cp)
+ # XXX The db is global so we restore it's trees back to their original state.
+ portdb.porttrees = all_trees
+ return mykeys
def cleanup_pkgmerge(mypkg,origdir):
shutil.rmtree(settings["PORTAGE_TMPDIR"]+"/binpkgs/"+mypkg)