[Checkins] SVN: Products.CMFCore/branches/matthewwilkes-traversalprecedence/Products/CMFCore/traverser.py Use IAcquirer check to determine if object should be re-wrapped, not try...except
Matthew Wilkes
matthew at matthewwilkes.co.uk
Mon Aug 17 08:25:32 EDT 2009
Log message for revision 102878:
Use IAcquirer check to determine if object should be re-wrapped, not try...except
Changed:
U Products.CMFCore/branches/matthewwilkes-traversalprecedence/Products/CMFCore/traverser.py
-=-
Modified: Products.CMFCore/branches/matthewwilkes-traversalprecedence/Products/CMFCore/traverser.py
===================================================================
--- Products.CMFCore/branches/matthewwilkes-traversalprecedence/Products/CMFCore/traverser.py 2009-08-17 12:23:36 UTC (rev 102877)
+++ Products.CMFCore/branches/matthewwilkes-traversalprecedence/Products/CMFCore/traverser.py 2009-08-17 12:25:32 UTC (rev 102878)
@@ -19,6 +19,7 @@
from zExceptions import Forbidden
+from Acquisition import aq_base
from Acquisition.interfaces import IAcquirer
from zope.interface import implements, Interface
@@ -55,13 +56,9 @@
# this is not a direct object
pass
else:
- try:
- subobject = subobject.aq_base.__of__(object)
- except (AttributeError, TypeError):
- pass # We can't aq wrap whatever this is
-
+ if IAcquirer.providedBy(subobject):
+ subobject = aq_base(subobject).__of__(object)
-
if subobject is None:
# We try to fall back to a view:
subobject = queryMultiAdapter((object, request), Interface,
More information about the Checkins
mailing list