[Zope-Checkins] CVS: Zope/lib/python/OFS - Traversable.py:1.18
Casey Duncan
casey@zope.com
Wed, 26 Feb 2003 11:51:47 -0500
Update of /cvs-repository/Zope/lib/python/OFS
In directory cvs.zope.org:/tmp/cvs-serv4016
Modified Files:
Traversable.py
Log Message:
Fix failure mode in (un)restrictedTraverse so that it raises a NotFound error wh
en traversing from a non-mapping object, rather than an obscure AttributeError o
n __getitem__
=== Zope/lib/python/OFS/Traversable.py 1.17 => 1.18 ===
--- Zope/lib/python/OFS/Traversable.py:1.17 Wed Sep 18 11:48:59 2002
+++ Zope/lib/python/OFS/Traversable.py Wed Feb 26 11:51:46 2003
@@ -140,7 +140,11 @@
else:
o = get(object, name, M)
if o is M:
- o=object[name]
+ try:
+ o=object[name]
+ except AttributeError:
+ # Raise a NotFound for easier debugging
+ raise 'NotFound', name
if (restricted and not securityManager.validate(
object, object, N, o)):
raise Unauthorized, name