[Zope3-checkins] CVS: Zope3/src/zope/app - introspector.py:1.20

Anthony Baxter anthony at interlink.com.au
Tue Feb 10 00:21:32 EST 2004


Update of /cvs-repository/Zope3/src/zope/app
In directory cvs.zope.org:/tmp/cvs-serv29686

Modified Files:
	introspector.py 
Log Message:
un-break the introspector's 'modify' tab.


=== Zope3/src/zope/app/introspector.py 1.19 => 1.20 ===
--- Zope3/src/zope/app/introspector.py:1.19	Fri Nov 21 12:10:44 2003
+++ Zope3/src/zope/app/introspector.py	Tue Feb 10 00:21:29 2004
@@ -24,6 +24,7 @@
 from zope.interface import implements, implementedBy
 from zope.interface import directlyProvides, directlyProvidedBy, providedBy
 from zope.interface.interfaces import IInterface
+from zope.interface.interface import InterfaceClass
 from zope.app.services.servicenames import Interfaces
 
 class Introspector:
@@ -181,6 +182,10 @@
         results = []
         iservice = getService(self.context, Interfaces)
         for id, interface in iservice.items(base=base):
+            # There are things registered with the interface service
+            # that are not interfaces. Yay!
+            if not IInterface.isImplementedBy(interface):
+                continue
             if base in interface.__bases__ and not interface.names():
                 results.append(interface)
         results.sort()




More information about the Zope3-Checkins mailing list