From 4ea96d5f484abfc26ff3e254cb9ba7f2ae572a18 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Fri, 5 Oct 2007 03:17:02 +0000 Subject: Make portdbapi.getfetchlist() bail out if the EAPI is unsupported. This makes it impossible for an unsupported EAPI to result in invalid Manifest generation. (trunk r7916) svn path=/main/branches/2.1.2/; revision=7938 --- pym/portage.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pym/portage.py b/pym/portage.py index 693333b7b..d17facf8f 100644 --- a/pym/portage.py +++ b/pym/portage.py @@ -6343,13 +6343,20 @@ class portdbapi(dbapi): if mysettings is None: mysettings = self.mysettings try: - myuris = self.aux_get(mypkg, ["SRC_URI"], mytree=mytree)[0] + eapi, myuris = self.aux_get(mypkg, + ["EAPI", "SRC_URI"], mytree=mytree) except KeyError: # Convert this to an InvalidDependString exception since callers # already handle it. raise portage_exception.InvalidDependString( "getfetchlist(): aux_get() error reading "+mypkg+"; aborting.") + if not eapi_is_supported(eapi): + # Convert this to an InvalidDependString exception + # since callers already handle it. + raise portage_exception.InvalidDependString( + "getfetchlist(): Unsupported EAPI: '%s'" % eapi.lstrip("-")) + if useflags is None: useflags = mysettings["USE"].split() -- cgit v1.2.3-1-g7c22