From 58b1c71329f9d9ce0ee3a004d9ecaa8887d1dfd5 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Mon, 17 Oct 2011 14:42:09 -0700 Subject: [PATCH] eclass_cache: fix volatile cache DigestException The deepcopy in catch/volatile.py misbehaved when it tried to copy attributes like __DEEPCOPY__ that didn't correspond to known functions. --- pym/portage/eclass_cache.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pym/portage/eclass_cache.py b/pym/portage/eclass_cache.py index 77adcd03f..1044ad021 100644 --- a/pym/portage/eclass_cache.py +++ b/pym/portage/eclass_cache.py @@ -42,10 +42,10 @@ class hashed_path(object): if not attr.islower(): # we don't care to allow .mD5 as an alias for .md5 raise AttributeError(attr) - try: - val = checksum.perform_checksum(self.location, attr.upper())[0] - except KeyError: + hashname = attr.upper() + if hashname not in checksum.hashfunc_map: raise AttributeError(attr) + val = checksum.perform_checksum(self.location, hashname)[0] setattr(self, attr, val) return val -- 2.26.2