summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pym/_emerge/depgraph.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index d9d0ed7c3..7981dc56a 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -3304,10 +3304,13 @@ class depgraph(object):
# For installed (and binary) packages we don't care for the repo
# when it comes to hashing, because there can only be one cpv.
# So overwrite the repo_key with type_name.
- myrepo = type_name
+ repo_key = type_name
+ myrepo = None
elif myrepo is None:
raise AssertionError(
"depgraph._pkg() called without 'myrepo' argument")
+ else:
+ repo_key = myrepo
operation = "merge"
if installed or onlydeps:
@@ -3316,11 +3319,11 @@ class depgraph(object):
# that refers to FakeVartree instead of the real vartree.
root_config = self._frozen_config.roots[root_config.root]
pkg = self._frozen_config._pkg_cache.get(
- (type_name, root_config.root, cpv, operation, myrepo))
+ (type_name, root_config.root, cpv, operation, repo_key))
if pkg is None and onlydeps and not installed:
# Maybe it already got pulled in as a "merge" node.
pkg = self._dynamic_config.mydbapi[root_config.root].get(
- (type_name, root_config.root, cpv, 'merge', myrepo))
+ (type_name, root_config.root, cpv, 'merge', repo_key))
if pkg is None:
tree_type = self.pkg_tree_map[type_name]