[Zope-Checkins] CVS: Zope2 - BeforeTraverse.py:1.6

Evan Simpson evan@digicool.com
Mon, 2 Apr 2001 17:32:51 -0400 (EDT)


Update of /cvs-repository/Zope2/lib/python/ZPublisher
In directory korak:/tmp/cvs-serv12926

Modified Files:
	BeforeTraverse.py 
Log Message:
Don't catch all exceptions in before-traverse.



--- Updated File BeforeTraverse.py in package Zope2 --
--- BeforeTraverse.py	2001/02/20 14:58:49	1.5
+++ BeforeTraverse.py	2001/04/02 21:32:50	1.6
@@ -197,7 +197,13 @@
         args = getattr(getattr(meth, 'func_code', None), 'co_argcount', 2)
         try:
             apply(meth, (container, request, None)[:args])
-        except:
+        except (ArithmeticError, AttributeError, FloatingPointError,
+                IOError, ImportError, IndexError, KeyError,
+                OSError, OverflowError, TypeError, ValueError,
+                ZeroDivisionError):
+            # Only catch exceptions that are likely to be logic errors.
+            # We shouldn't catch Redirects, Unauthorizeds, etc. since
+            # the programmer may want to raise them deliberately.
             from zLOG import LOG, ERROR
             import sys
             LOG('BeforeTraverse', ERROR,