diff options
author | 2010-05-20 19:31:20 -0700 | |
---|---|---|
committer | 2010-05-20 19:31:20 -0700 | |
commit | 0066c26a37831f2fb3b1f9857b214ee77ee70b2b (patch) | |
tree | c742a38e8f302a7d5f1399b8e19d3325c9d7776e | |
parent | If a dependency is installed but masked, try to pull in an unmasked version (diff) | |
download | portage-idfetch-0066c26a37831f2fb3b1f9857b214ee77ee70b2b.tar.gz portage-idfetch-0066c26a37831f2fb3b1f9857b214ee77ee70b2b.tar.bz2 portage-idfetch-0066c26a37831f2fb3b1f9857b214ee77ee70b2b.zip |
Fix depgraph.schedulerGraph() to break DepPriority.satisfied attributes
which reference installed Package instances.
-rw-r--r-- | pym/_emerge/depgraph.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index a9ef7299..6ed97871 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -3303,6 +3303,16 @@ class depgraph(object): if self._dynamic_config._scheduler_graph is None: self.altlist() self.break_refs(self._dynamic_config._scheduler_graph.order) + + # Break DepPriority.satisfied attributes which reference + # installed Package instances. + for parents, children, node in \ + self._dynamic_config._scheduler_graph.nodes.values(): + for priorities in chain(parents.values(), children.values()): + for priority in priorities: + if priority.satisfied: + priority.satisfied = True + return self._dynamic_config._scheduler_graph def break_refs(self, nodes): |