summaryrefslogtreecommitdiffstats
path: root/bin/emerge
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2008-05-26 23:29:25 +0000
committerZac Medico <zmedico@gentoo.org>2008-05-26 23:29:25 +0000
commit45ff8239f28ef4ba3dd47b016147eccceeaa26e0 (patch)
tree0344d54e55ece7d23ad307ea7d40fa877d60c20d /bin/emerge
parent7a5c2760101172f78ca6d8f7ce7fa93f55cc7466 (diff)
downloadportage-45ff8239f28ef4ba3dd47b016147eccceeaa26e0.tar.gz
portage-45ff8239f28ef4ba3dd47b016147eccceeaa26e0.tar.bz2
portage-45ff8239f28ef4ba3dd47b016147eccceeaa26e0.zip
Don't silently swallow instances of UnpicklingError since they are easily
triggered by storing instances of custom classes in a pickle. (trunk r10432:10434) svn path=/main/branches/2.1.2/; revision=10435
Diffstat (limited to 'bin/emerge')
-rwxr-xr-xbin/emerge7
1 files changed, 5 insertions, 2 deletions
diff --git a/bin/emerge b/bin/emerge
index acb42e4f2..424fbdc91 100755
--- a/bin/emerge
+++ b/bin/emerge
@@ -1557,8 +1557,11 @@ class BlockerCache(DictMixin):
self._cache_data = mypickle.load()
f.close()
del f
- except (IOError, OSError, EOFError, cPickle.UnpicklingError):
- pass
+ except (IOError, OSError, EOFError, cPickle.UnpicklingError), e:
+ if isinstance(e, cPickle.UnpicklingError):
+ writemsg("!!! Error loading '%s': %s\n" % \
+ (self._cache_filename, str(e)), noiselevel=-1)
+ del e
cache_valid = self._cache_data and \
isinstance(self._cache_data, dict) and \
self._cache_data.get("version") == self._cache_version and \