From 12ab9b31ccb72186c55f7021ca836f95a2187a12 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Sun, 24 Aug 2008 17:32:19 +0000 Subject: * Fix broken _ObjectKey.__eq__() logic from previous commit. * Define _ObjectKey.__slots__ to save memory. svn path=/main/trunk/; revision=11467 --- pym/portage/dbapi/vartree.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/pym/portage/dbapi/vartree.py b/pym/portage/dbapi/vartree.py index b3eefe8c4..598845e0b 100644 --- a/pym/portage/dbapi/vartree.py +++ b/pym/portage/dbapi/vartree.py @@ -153,6 +153,8 @@ class LinkageMap(object): """Helper class used as _obj_properties keys for objects.""" + __slots__ = ("__weakref__", "_key") + def __init__(self, object): """ This takes a path to an object. @@ -167,9 +169,11 @@ class LinkageMap(object): return hash(self._key) def __eq__(self, other): - if not isinstance(other, self.__class__): - return False - return self._key == other._key + if isinstance(other, self.__class__): + other_key = other._key + else: + other_key = other + return self._key == other_key def _generate_object_key(self, object): """ -- cgit v1.2.3-1-g7c22