From: Zac Medico Date: Mon, 9 May 2011 06:23:07 +0000 (-0700) Subject: cpv_expand: populate old-style virts on demand X-Git-Tag: v2.1.9.49~22 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=97accf02abc066fe72c33778765b2b097464bba6;p=portage.git cpv_expand: populate old-style virts on demand If old-style virtuals code is triggered here and we are given a vartree, use it to avoid creating a temporary instance. --- diff --git a/pym/portage/dbapi/cpv_expand.py b/pym/portage/dbapi/cpv_expand.py index 26f994887..b77c283f7 100644 --- a/pym/portage/dbapi/cpv_expand.py +++ b/pym/portage/dbapi/cpv_expand.py @@ -28,6 +28,8 @@ def cpv_expand(mycpv, mydb=None, use_cache=1, settings=None): mykey=mycpv if hasattr(mydb, "cp_list") and \ not mydb.cp_list(mykey, use_cache=use_cache): + if hasattr(mydb, "vartree"): + settings._populate_treeVirtuals_if_needed(mydb.vartree) virts = settings.getvirtuals().get(mykey) if virts: mykey_orig = mykey @@ -76,6 +78,8 @@ def cpv_expand(mycpv, mydb=None, use_cache=1, settings=None): mykey=matches[0] if not mykey and not isinstance(mydb, list): + if hasattr(mydb, "vartree"): + settings._populate_treeVirtuals_if_needed(mydb.vartree) virts_p = settings.get_virts_p().get(myp) if virts_p: mykey = virts_p[0]