selectors.py
branchstable
changeset 6364 ad9ed9803eb6
parent 6360 1edfc0f3bb1d
child 6366 1806148d6ce8
child 6541 9c3821885443
--- a/selectors.py	Wed Sep 29 12:53:30 2010 +0200
+++ b/selectors.py	Wed Sep 29 12:54:35 2010 +0200
@@ -1073,7 +1073,9 @@
                 for i, row in enumerate(rset):
                     if not rset.description[i][col] in need_local_check:
                         continue
-                    if not self.score(req, rset, i, col):
+                    # micro-optimisation instead of calling self.score(req,
+                    # rset, i, col): rset may be large
+                    if not rset.get_entity(i, col).cw_has_perm(action):
                         return 0
                 score += 1
             return score