summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-02-04 07:41:45 -0800
committerZac Medico <zmedico@gentoo.org>2011-02-04 07:54:55 -0800
commitd7d6c75fdcdc3222ea89da4db16a636c8c493ea3 (patch)
tree6c9c3010ba34adf7326962fa249c6866cdda5f2a
parent34b0fcc882664b78911b8f67461ad70676e4debe (diff)
downloadportage-d7d6c75fdcdc3222ea89da4db16a636c8c493ea3.tar.gz
portage-d7d6c75fdcdc3222ea89da4db16a636c8c493ea3.tar.bz2
portage-d7d6c75fdcdc3222ea89da4db16a636c8c493ea3.zip
depgraph: don't drop deps in _add_dep
This will fix bug #353613. We remove a hunk of code that was meant to limit recursion, but is obsolete an buggy. The recursion limiting is now handled by _add_pkg and the _ignored_deps stack.
-rw-r--r--pym/_emerge/depgraph.py29
1 files changed, 0 insertions, 29 deletions
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 8b801f5cd..5380de15b 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -703,8 +703,6 @@ class depgraph(object):
dep_pkg = dep.child
existing_node = self._dynamic_config._slot_pkg_map[
dep.root].get(dep_pkg.slot_atom)
- if existing_node is not dep_pkg:
- existing_node = None
if not dep_pkg:
if dep.priority.optional:
@@ -753,33 +751,6 @@ class depgraph(object):
noiselevel=-1, level=logging.DEBUG)
return 0
- # In some cases, dep_check will return deps that shouldn't
- # be proccessed any further, so they are identified and
- # discarded here. Try to discard as few as possible since
- # discarded dependencies reduce the amount of information
- # available for optimization of merge order.
- if dep.priority.satisfied and \
- dep.priority.satisfied.visible and \
- not dep_pkg.installed and \
- not (existing_node or recurse):
- myarg = None
- if dep.root == self._frozen_config.target_root:
- try:
- myarg = next(self._iter_atoms_for_pkg(dep_pkg))
- except StopIteration:
- pass
- except portage.exception.InvalidDependString:
- if not dep_pkg.installed:
- # This shouldn't happen since the package
- # should have been masked.
- raise
- if not myarg:
- # Existing child selection may not be valid unless
- # it's added to the graph immediately, since "complete"
- # mode may select a different child later.
- dep.child = None
- self._dynamic_config._ignored_deps.append(dep)
- return 1
if not self._add_pkg(dep_pkg, dep):
return 0