[Zope-Checkins] CVS: Zope/lib/python/OFS - PropertyManager.py:1.46.4.1 SimpleItem.py:1.102.4.2 Traversable.py:1.15.4.1

Chris McDonough chrism@zope.com
Mon, 16 Sep 2002 02:01:21 -0400


Update of /cvs-repository/Zope/lib/python/OFS
In directory cvs.zope.org:/tmp/cvs-serv9237/lib/python/OFS

Modified Files:
      Tag: chrism-install-branch
	PropertyManager.py SimpleItem.py Traversable.py 
Log Message:
Merging with HEAD.


=== Zope/lib/python/OFS/PropertyManager.py 1.46 => 1.46.4.1 ===


=== Zope/lib/python/OFS/SimpleItem.py 1.102.4.1 => 1.102.4.2 ===


=== Zope/lib/python/OFS/Traversable.py 1.15 => 1.15.4.1 ===
--- Zope/lib/python/OFS/Traversable.py:1.15	Wed Aug 14 17:42:56 2002
+++ Zope/lib/python/OFS/Traversable.py	Mon Sep 16 02:00:50 2002
@@ -99,6 +99,7 @@
             object = self
             while path:
                 name=pop()
+                __traceback_info__ = path, name
 
                 if name[0] == '_':
                     # Never allowed in a URL.
@@ -119,7 +120,11 @@
 
                     if restricted:
                         container = N
-                        if has(o, 'im_self'):
+                        if aq_base(o) is not o:
+                            # The object is wrapped, so the acquisition
+                            # context determines the container.
+                            container = aq_parent(aq_inner(o))
+                        elif has(o, 'im_self'):
                             container = o.im_self
                         elif (has(get(object, 'aq_base', object), name)
                               and get(object, name) == o):