1 |
Author: zmedico |
2 |
Date: 2008-11-29 20:22:33 +0000 (Sat, 29 Nov 2008) |
3 |
New Revision: 12122 |
4 |
|
5 |
Modified: |
6 |
main/trunk/pym/_emerge/__init__.py |
7 |
Log: |
8 |
Add a sanity check inside depgraph._add_pkg() to ensure that the dependencies |
9 |
of the same package are never processed more than once. |
10 |
|
11 |
|
12 |
Modified: main/trunk/pym/_emerge/__init__.py |
13 |
=================================================================== |
14 |
--- main/trunk/pym/_emerge/__init__.py 2008-11-29 06:39:43 UTC (rev 12121) |
15 |
+++ main/trunk/pym/_emerge/__init__.py 2008-11-29 20:22:33 UTC (rev 12122) |
16 |
@@ -4552,6 +4552,9 @@ |
17 |
#IUSE-aware emerge -> USE DEP aware depgraph |
18 |
#"no downgrade" emerge |
19 |
""" |
20 |
+ # Ensure that the dependencies of the same package |
21 |
+ # are never processed more than once. |
22 |
+ previously_added = pkg in self.digraph |
23 |
|
24 |
# select the correct /var database that we'll be checking against |
25 |
vardbapi = self.trees[pkg.root]["vartree"].dbapi |
26 |
@@ -4704,7 +4707,8 @@ |
27 |
if args: |
28 |
depth = 0 |
29 |
pkg.depth = depth |
30 |
- dep_stack.append(pkg) |
31 |
+ if not previously_added: |
32 |
+ dep_stack.append(pkg) |
33 |
return 1 |
34 |
|
35 |
def _add_pkg_deps(self, pkg, allow_unsatisfied=False): |