Gentoo Archives: gentoo-commits

From: "Zac Medico (zmedico)" <zmedico@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] portage r10469 - main/branches/2.1.2/bin
Date: Wed, 28 May 2008 22:16:26
Message-Id: E1K1TwV-0005J0-Sr@stork.gentoo.org
1 Author: zmedico
2 Date: 2008-05-28 22:16:22 +0000 (Wed, 28 May 2008)
3 New Revision: 10469
4
5 Modified:
6 main/branches/2.1.2/bin/emerge
7 Log:
8 * Update the fix from bug #220341 to protect USE deps from being neglected.
9 * Skip redundant Atom construction in select_package().
10 (trunk r10466:10468)
11
12
13 Modified: main/branches/2.1.2/bin/emerge
14 ===================================================================
15 --- main/branches/2.1.2/bin/emerge 2008-05-28 22:12:18 UTC (rev 10468)
16 +++ main/branches/2.1.2/bin/emerge 2008-05-28 22:16:22 UTC (rev 10469)
17 @@ -3102,7 +3102,8 @@
18 # List of acceptable packages, ordered by type preference.
19 matched_packages = []
20 highest_version = None
21 - atom = portage_dep.Atom(atom)
22 + if not isinstance(atom, portage_dep.Atom):
23 + atom = portage_dep.Atom(atom)
24 atom_cp = atom.cp
25 existing_node = None
26 myeb = None
27 @@ -3145,12 +3146,19 @@
28 # the newly built package still won't have the expected slot.
29 # Therefore, assume that such SLOT dependencies are already
30 # satisfied rather than forcing a rebuild.
31 - if installed and not cpv_list and matched_packages \
32 - and portage_dep.dep_getslot(atom):
33 + if installed and not cpv_list and \
34 + matched_packages and atom.slot:
35 for pkg in matched_packages:
36 - if vardb.cpv_exists(pkg.cpv):
37 + if not vardb.cpv_exists(pkg.cpv):
38 + continue
39 + # Remove the slot from the atom and verify that
40 + # the package matches the resulting atom.
41 + atom_without_slot = portage_dep.remove_slot(atom)
42 + atom_without_slot = portage_dep.Atom(atom_without_slot)
43 + if portage.match_from_list(
44 + atom_without_slot, [pkg]):
45 cpv_list = [pkg.cpv]
46 - break
47 + break
48
49 if not cpv_list:
50 continue
51
52 --
53 gentoo-commits@l.g.o mailing list