Reimplement the fix for bug #79566 more cleanly (the -* hack seems quite non-intuitive).
authorZac Medico <zmedico@gentoo.org>
Fri, 5 May 2006 18:10:20 +0000 (18:10 -0000)
committerZac Medico <zmedico@gentoo.org>
Fri, 5 May 2006 18:10:20 +0000 (18:10 -0000)
svn path=/main/trunk/; revision=3320

pym/portage.py

index d9a0ea982fe30a0b246750846371dcfdc4396388..339d96b943cfc55f69204c44ad0c99445255552f 100644 (file)
@@ -1316,7 +1316,7 @@ class config:
                                self.features.remove("usersandbox")
 
                self.features.sort()
-               self["FEATURES"] = " ".join(["-*"]+self.features)
+               self["FEATURES"] = " ".join(self.features)
                self.backup_changes("FEATURES")
 
                if not len(self["CBUILD"]) and len(self["CHOST"]):
@@ -1503,6 +1503,14 @@ class config:
                        myincrementals=["USE"]
                else:
                        myincrementals=portage_const.INCREMENTALS
+
+               # If self.features exists, it has already been stacked and may have
+               # been mutated, so don't stack it again or else any mutations will be
+               # reverted.
+               if "FEATURES" in myincrementals and hasattr(self, "features"):
+                       myincrementals = set(myincrementals)
+                       myincrementals.remove("FEATURES")
+
                for mykey in myincrementals:
                        if mykey=="USE":
                                mydbs=self.uvlist