diff options
author | Zac Medico <zmedico@gentoo.org> | 2008-09-29 16:58:48 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2008-09-29 16:58:48 +0000 |
commit | 6a45cf7fa340be3754f12222089f2e57cb560b4a (patch) | |
tree | a89f4fe931e2043733f649831f1c11d15aca6100 | |
parent | d7a2d84dd11b355b51fdd7e223b0c09d9d7bc0f1 (diff) | |
download | portage-6a45cf7fa340be3754f12222089f2e57cb560b4a.tar.gz portage-6a45cf7fa340be3754f12222089f2e57cb560b4a.tar.bz2 portage-6a45cf7fa340be3754f12222089f2e57cb560b4a.zip |
Bug #239006 - In FakeVartree._aux_get_wrapper(), fall back to vdb metadata
if the live ebuild's EAPI is unsupported.
svn path=/main/trunk/; revision=11600
-rw-r--r-- | pym/_emerge/__init__.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index 000f2f6dc..ac168bd1f 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -1102,7 +1102,7 @@ class FakeVartree(portage.vartree): self._match = self.dbapi.match self.dbapi.match = self._match_wrapper self._aux_get_history = set() - self._portdb_keys = ["DEPEND", "RDEPEND", "PDEPEND"] + self._portdb_keys = ["EAPI", "DEPEND", "RDEPEND", "PDEPEND"] self._portdb = portdb self._global_updates = None @@ -1128,6 +1128,8 @@ class FakeVartree(portage.vartree): # Use the live ebuild metadata if possible. live_metadata = dict(izip(self._portdb_keys, self._portdb.aux_get(pkg, self._portdb_keys))) + if not portage.eapi_is_supported(live_metadata["EAPI"]): + raise KeyError(pkg) self.dbapi.aux_update(pkg, live_metadata) except (KeyError, portage.exception.PortageException): if self._global_updates is None: |