fix: python dbm module doesn't accept unicode as key (trunk r15286)
authorZac Medico <zmedico@gentoo.org>
Tue, 2 Mar 2010 19:48:56 +0000 (19:48 -0000)
committerZac Medico <zmedico@gentoo.org>
Tue, 2 Mar 2010 19:48:56 +0000 (19:48 -0000)
svn path=/main/branches/2.1.7/; revision=15525

pym/portage/cache/anydbm.py

index 6add2da60c7c7448d9185f535bc0dc7edf8d17f2..33cedebbb1f028f7a7c8d6af7eae6b0244b11708 100644 (file)
@@ -63,10 +63,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])
+               return pickle.loads(self.__db[_unicode_encode(cpv)])
 
        def _setitem(self, cpv, values):
-               self.__db[cpv] = pickle.dumps(values,pickle.HIGHEST_PROTOCOL)
+               self.__db[_unicode_encode(cpv)] = pickle.dumps(values,pickle.HIGHEST_PROTOCOL)
 
        def _delitem(self, cpv):
                del self.__db[cpv]