diff options
author | 2005-08-16 00:29:45 +0000 | |
---|---|---|
committer | 2005-08-16 00:29:45 +0000 | |
commit | 9a8187054fd3164b3fb797c2c7da1a6e13261370 (patch) | |
tree | 517b881e454cd4e887b794f65ee74ae2113007ea | |
parent | 1) restriction cleanup (diff) | |
download | portage-cvs-9a8187054fd3164b3fb797c2c7da1a6e13261370.tar.gz portage-cvs-9a8187054fd3164b3fb797c2c7da1a6e13261370.tar.bz2 portage-cvs-9a8187054fd3164b3fb797c2c7da1a6e13261370.zip |
improper tracking of additions without recording a forced change (duplicate forced, but still must be tracked for rewinding the stack)
-rw-r--r-- | portage/util/mappings.py | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/portage/util/mappings.py b/portage/util/mappings.py index 036564c..e23e8d2 100644 --- a/portage/util/mappings.py +++ b/portage/util/mappings.py @@ -1,7 +1,7 @@ # Copyright: 2005 Gentoo Foundation # Author(s): Brian Harring (ferringb@gentoo.org) # License: GPL2 -# $Header: /local/data/ulm/cvs/history/var/cvsroot/gentoo-src/portage/portage/util/mappings.py,v 1.1 2005/08/09 07:43:43 ferringb Exp $ +# $Header: /local/data/ulm/cvs/history/var/cvsroot/gentoo-src/portage/portage/util/mappings.py,v 1.2 2005/08/16 00:29:45 ferringb Exp $ from itertools import imap @@ -257,9 +257,6 @@ class LimitedChangeSet(object): self.__orig = frozenset(self.__new) def add(self, key): - if key in self.__new: - return - if key in self.__changed or key in self.__blacklist: # it's been del'd already once upon a time. raise Unchangable(key) @@ -272,7 +269,8 @@ class LimitedChangeSet(object): if key in self.__changed or key in self.__blacklist: raise Unchangable(key) - self.__new.remove(key) + if key in self.__new: + self.__new.remove(key) self.__changed.add(key) self.__change_order.append((self._removed, key)) @@ -305,3 +303,6 @@ class LimitedChangeSet(object): def __iter__(self): return iter(self.__new) + + def __len__(self): + return len(self.__new) |