predicates.py
branchstable
changeset 9152 b0155bfd4e17
parent 8872 b638a99ab9cf
child 9157 3e4bef7d514d
--- a/predicates.py	Fri Jun 14 16:02:39 2013 +0200
+++ b/predicates.py	Mon Jul 15 10:40:49 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