From: Zac Medico Date: Sun, 5 Dec 2010 00:58:58 +0000 (-0800) Subject: Package: Use IUSE to validate built USE X-Git-Tag: v2.1.9.26~36 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=e7f0965e86c93146b1726087c76ea14593b2fd20;p=portage.git Package: Use IUSE to validate built USE --- diff --git a/pym/_emerge/Package.py b/pym/_emerge/Package.py index 361bfc70a..47a435f21 100644 --- a/pym/_emerge/Package.py +++ b/pym/_emerge/Package.py @@ -315,6 +315,14 @@ class Package(Task): self._force = None self._mask = None self.enabled = frozenset(use_str.split()) + if pkg.built: + # Use IUSE to validate USE settings for built packages, + # in case the package manager that built this package + # failed to do that for some reason (or in case of + # data corruption). + missing_iuse = pkg.iuse.get_missing_iuse(self.enabled) + if missing_iuse: + self.enabled = self.enabled.difference(missing_iuse) def _init_force_mask(self): pkgsettings = self._pkg._get_pkgsettings()