summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2010-10-14 19:10:02 -0700
committerZac Medico <zmedico@gentoo.org>2010-10-14 19:10:02 -0700
commit3c0cb331f175dad48be447a6b002f26935bd624c (patch)
treedc40a689026ed5faf2bd5fbf85c221821571c063
parente0cc5ef31f9459b3c1615ce45cbb48c27e1b178f (diff)
downloadportage-3c0cb331f175dad48be447a6b002f26935bd624c.tar.gz
portage-3c0cb331f175dad48be447a6b002f26935bd624c.tar.bz2
portage-3c0cb331f175dad48be447a6b002f26935bd624c.zip
Optimize uninstall selection more.
-rw-r--r--pym/_emerge/depgraph.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index adef1193d..adabc97d4 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -4321,6 +4321,11 @@ class depgraph(object):
min_parent_deps = len(parent_deps)
uninst_task = task
+ if uninst_task is not None and min_parent_deps == 1:
+ # This is the best possible result, so so abort search
+ # now in order avoid wasting any more cpu time.
+ break
+
if uninst_task is not None:
# The uninstall is performed only after blocking
# packages have been merged on top of it. File