predicates.py
branchstable
changeset 9157 3e4bef7d514d
parent 8889 be91151107f6
parent 9152 b0155bfd4e17
child 9256 697a8181ba30
--- a/predicates.py	Wed Jul 10 15:03:50 2013 +0200
+++ b/predicates.py	Mon Jul 22 09:47:56 2013 +0200
@@ -994,7 +994,11 @@
             return 0 # relation not supported
         if self.action:
             if self.target_etype is not None:
-                rschema = rschema.role_rdef(entity.e_schema, self.target_etype, self.role)
+                try:
+                    rschema = rschema.role_rdef(entity.e_schema,
+                                                self.target_etype, self.role)
+                except KeyError:
+                    return 0
             if self.role == 'subject':
                 if not rschema.has_perm(entity._cw, self.action, fromeid=entity.eid):
                     return 0