diff options
-rw-r--r-- | pym/portage/dbapi/vartree.py | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/pym/portage/dbapi/vartree.py b/pym/portage/dbapi/vartree.py index 598845e0b..2c030c13c 100644 --- a/pym/portage/dbapi/vartree.py +++ b/pym/portage/dbapi/vartree.py @@ -169,11 +169,12 @@ class LinkageMap(object): return hash(self._key) def __eq__(self, other): - if isinstance(other, self.__class__): - other_key = other._key - else: - other_key = other - return self._key == other_key + if not isinstance(other, self.__class__): + # Can't safely return True in this case since + # if there is a hash collision then __eq__ needs + # to be relied upon for correct dict behavior. + return False + return self._key == other._key def _generate_object_key(self, object): """ |