summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2010-09-17 18:52:05 -0700
committerZac Medico <zmedico@gentoo.org>2010-09-17 18:52:05 -0700
commit3399773dd5b602b33c075b43e8396f56c7ff8185 (patch)
treebdc0c3f7f7ee005205a72341f0558fb6332060c9
parenta6847096d5e4140cca468c26d78366abf8467184 (diff)
downloadportage-3399773dd5b602b33c075b43e8396f56c7ff8185.tar.gz
portage-3399773dd5b602b33c075b43e8396f56c7ff8185.tar.bz2
portage-3399773dd5b602b33c075b43e8396f56c7ff8185.zip
Make EbuildIpcDaemon._input_handler() use a blanket exception
handler for pickle.loads() since that can raise practically any exception when given corrupt data.
-rw-r--r--pym/_emerge/EbuildIpcDaemon.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/pym/_emerge/EbuildIpcDaemon.py b/pym/_emerge/EbuildIpcDaemon.py
index f6bfecfbe..66d868ba2 100644
--- a/pym/_emerge/EbuildIpcDaemon.py
+++ b/pym/_emerge/EbuildIpcDaemon.py
@@ -36,8 +36,11 @@ class EbuildIpcDaemon(FifoIpcDaemon):
try:
obj = pickle.loads(buf.tostring())
- except (EnvironmentError, EOFError, ValueError,
- pickle.UnpicklingError):
+ except SystemExit:
+ raise
+ except Exception:
+ # The pickle module can raise practically
+ # any exception when given corrupt data.
pass
else:
cmd_key = obj[0]