Re: ZClass problem in 2.8 (Was: Re: Upcoming Zope 2.8 release)

John Barratt <[email protected]> Thu, 09 Jun 2005 16:54:57 +1000
Newsgroups gmane.comp.web.zope.devel,gmane.comp.web.zope.coders
Message-ID <[email protected]>
Dieter Maurer wrote:
> Looks like an acquisition bug:
> 
>       obj.aq_inContextOf(context, 1) is recursively defined by:
> 
> 	  True, if "obj.aq_base == context.aq_base"
> 	  or "container(obj) is not None"
> 	  and "container(obj).aq_inContextOf(context, 1)"
> 
> 	  where "container(obj)" is "aq_parent(aq_inner(obj))"
> 	  which is the container containing "obj".
> 
> which is equivalent to (resolving the recursing):
> 
>       obj.aq_inContextOf(context, 1)
>       iff for some (hierarchie) ancestor "a" of obj,
>       "a.aq_base == context.aq_base".
> 
> Given this definition, you can check which implementation
> is wrong and file a bug report.

Looking at the relevant *Acquisition.c files, both implementations of 
aq_inContextOf(2.7.6 & 2.8.0b2) are identical.  The implementation of 
macros used in this method (isWrapper, WRAPPER, and OBJECT) are also 
identitcal, there being nothing else immediately  obvious that looks 
like it could have been implemented differently there.

I would hence suspect the wrapping, and/or behaviour of the object 
and/or context to be somehow different?

JB.
_______________________________________________
Zope-Dev maillist  -  [email protected]
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope )