From a029b9d5f29259a8fa5532613667d38b37c30be9 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Thu, 4 May 2006 10:15:55 +0000 Subject: Make sure that cloned FEATURES are correctly preserved by getting them directly from the backupenv instead of going through the lookuplist (Bug #132196). svn path=/main/trunk/; revision=3318 --- pym/portage.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'pym/portage.py') diff --git a/pym/portage.py b/pym/portage.py index 8b46a35d7..d9a0ea982 100644 --- a/pym/portage.py +++ b/pym/portage.py @@ -1292,13 +1292,15 @@ class config: self.features = portage_util.unique_array(self["FEATURES"].split()) else: # XXX - # The below self.regenerate() causes previous changes to FEATURES (and - # other incrementals) to be reverted. If this instance is a clone, we - # need to skip regenerate() so that the copied values are preserved. - self.features = portage_util.unique_array(self["FEATURES"].split()) + # The below self.regenerate() causes previous changes to FEATURES + # (and other incrementals) to be reverted. If this instance is a + # clone, we need to take the cloned FEATURES from backupenv and + # save them where the regenerate() call will not destroy them. + # Later, we use backup_changes() to restore the cloned FEATURES + # into the backupenv once again. + self.features = portage_util.unique_array( + self.backupenv["FEATURES"].split()) self.regenerate() - self["FEATURES"] = " ".join(self.features) - self.backup_changes("FEATURES") #XXX: Should this be temporary? Is it possible at all to have a default? if "gpg" in self.features: -- cgit v1.2.3-1-g7c22