summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Alexander <steve@z3u.com>2002-06-18 20:07:56 +0000
committerSteve Alexander <steve@z3u.com>2002-06-18 20:07:56 +0000
commite27c5ec1065728cd6007e8c49ff0b681267773a1 (patch)
treecd0c40b4902531086b7fe4118b8473b1adc531e0
parentf5bc1c006cdde3ecdd4e0816066f2d199d511eaf (diff)
downloadzope-traversing-e27c5ec1065728cd6007e8c49ff0b681267773a1.tar.gz
corrected inappropriate use of "self" as a marker.
-rw-r--r--DefaultTraversable.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/DefaultTraversable.py b/DefaultTraversable.py
index e972122..aced9e5 100644
--- a/DefaultTraversable.py
+++ b/DefaultTraversable.py
@@ -15,6 +15,7 @@ from ITraversable import ITraversable
from Zope.Exceptions import NotFoundError
from Exceptions import UnexpectedParameters
+_marker = object() # opaque marker that doesn't get security proxied
class DefaultTraversable:
"""Traverses objects via attribute and item lookup"""
@@ -27,8 +28,8 @@ class DefaultTraversable:
if parameters:
raise UnexpectedParameters(parameters)
subject = self._subject
- r = getattr(subject, name, self) # self used as marker
- if r is not self:
+ r = getattr(subject, name, _marker)
+ if r is not _marker:
return r
if hasattr(subject, '__getitem__'):