From f3de6b783521b08735e9117e36bb0d0fa718066d Mon Sep 17 00:00:00 2001 From: Jason Stubbs Date: Sat, 17 Dec 2005 17:13:13 +0000 Subject: Unpack the _eclasses_ value as it's packed by the database template's __setitem__ method. svn path=/main/trunk/; revision=2393 --- pym/cache/anydbm.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'pym/cache') diff --git a/pym/cache/anydbm.py b/pym/cache/anydbm.py index bc380ae27..28d1a889e 100644 --- a/pym/cache/anydbm.py +++ b/pym/cache/anydbm.py @@ -10,6 +10,7 @@ except ImportError: import pickle import os import fs_template +from template import reconstruct_eclasses import cache_errors @@ -51,7 +52,10 @@ class database(fs_template.FsBased): def __getitem__(self, cpv): # we override getitem because it's just a cpickling of the data handed in. - return pickle.loads(self.__db[cpv]) + d = pickle.loads(self.__db[cpv]) + if "_eclasses_" in d: + d["_eclasses_"] = reconstruct_eclasses(cpv, d["_eclasses_"]) + return d def _setitem(self, cpv, values): -- cgit v1.2.3-1-g7c22