[Zope-Checkins] CVS: Zope3/lib/python/Zope/App/Security - PermissionRegistry.py:1.1.2.7

Tres Seaver tseaver@zope.com
Wed, 28 Nov 2001 15:53:44 -0500


Update of /cvs-repository/Zope3/lib/python/Zope/App/Security
In directory cvs.zope.org:/tmp/cvs-serv7652

Modified Files:
      Tag: Zope-3x-branch
	PermissionRegistry.py 
Log Message:
 - Minor cleanup.

=== Zope3/lib/python/Zope/App/Security/PermissionRegistry.py 1.1.2.6 => 1.1.2.7 ===
     def includePermission( self, permission ):
 
-        roles = list( rolesForPermission( permission ) )
-        if self._name in roles:
+        if self.hasPermission( permission ):
             raise KeyError, \
                     ( 'Role %s already includes permission %s'
                     % ( self._name, permission )
                     )
 
+        roles = list( rolesForPermission( permission ) )
         roles.append( self._name )
         roles.sort()
         _permissions[ permission ] = tuple( roles )
@@ -54,6 +54,6 @@
         raise KeyError, 'No such permission: %s' % permission
     return _permissions[ permission ]
 
-def _clear():
+def _clear(): # Reset, e.g., for unit testing antisepsis
     _permissions.clear()
     _roles.clear()