When more than one utility is selected for deleting in the site
management view, only the first selected utility is deleted.

The problem is that the content of regManager is changed inside the
while iteratating over it.
Here is the fix which works for me :
If this is applicable, can please someone check it into the trunk ?
The file is in zope.app.component.browser


Index: tools.py
--- tools.py    (revision 38746)
+++ tools.py    (working copy)
@@ -192,7 +192,8 @@
         tool = self.activeTool
         regManager = self.context[tool.folder].registrationManager
         names = self.request.form['selected']
-        for reg in regManager.values():
+        values=[v for v in regManager.values()]
+        for reg in values:
             if reg.provided.isOrExtends(tool.interface) and reg.name in
                 component = reg.component
                 reg.status = interfaces.registration.InactiveStatus



Zope3-dev mailing list
Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com

Reply via email to