1 |
Author: zmedico |
2 |
Date: 2008-05-29 00:32:27 +0000 (Thu, 29 May 2008) |
3 |
New Revision: 10470 |
4 |
|
5 |
Modified: |
6 |
main/trunk/pym/_emerge/__init__.py |
7 |
Log: |
8 |
Fix the code from bug #220341 so that it matches the atom against the |
9 |
installed package, like it's supposed to. |
10 |
|
11 |
|
12 |
Modified: main/trunk/pym/_emerge/__init__.py |
13 |
=================================================================== |
14 |
--- main/trunk/pym/_emerge/__init__.py 2008-05-28 22:16:22 UTC (rev 10469) |
15 |
+++ main/trunk/pym/_emerge/__init__.py 2008-05-29 00:32:27 UTC (rev 10470) |
16 |
@@ -3073,6 +3073,16 @@ |
17 |
for pkg in matched_packages: |
18 |
if not vardb.cpv_exists(pkg.cpv): |
19 |
continue |
20 |
+ inst_pkg = self._pkg_cache.get( |
21 |
+ (pkg_type, root, pkg.cpv, "nomerge")) |
22 |
+ if inst_pkg is None: |
23 |
+ metadata = izip(self._mydbapi_keys, |
24 |
+ vardb.aux_get(cpv, self._mydbapi_keys)) |
25 |
+ inst_pkg = Package(built=built, cpv=pkg.cpv, |
26 |
+ installed=installed, metadata=metadata, |
27 |
+ onlydeps=onlydeps, root_config=root_config, |
28 |
+ type_name=pkg_type) |
29 |
+ self._pkg_cache[inst_pkg] = inst_pkg |
30 |
# Remove the slot from the atom and verify that |
31 |
# the package matches the resulting atom. |
32 |
atom_without_slot = portage.dep.remove_slot(atom) |
33 |
@@ -3080,8 +3090,8 @@ |
34 |
atom_without_slot += str(atom.use) |
35 |
atom_without_slot = portage.dep.Atom(atom_without_slot) |
36 |
if portage.match_from_list( |
37 |
- atom_without_slot, [pkg]): |
38 |
- cpv_list = [pkg.cpv] |
39 |
+ atom_without_slot, [inst_pkg]): |
40 |
+ cpv_list = [inst_pkg.cpv] |
41 |
break |
42 |
|
43 |
if not cpv_list: |
44 |
|
45 |
-- |
46 |
gentoo-commits@l.g.o mailing list |