diff --git a/src/main/java/org/caosdb/server/transaction/WriteTransaction.java b/src/main/java/org/caosdb/server/transaction/WriteTransaction.java
index 3c4cf0f5ddb5ab2118f6bf2ae03bb9e99fb494ba..ed3ac86163a2a6d1bc594ca80ee57a793cc845a7 100644
--- a/src/main/java/org/caosdb/server/transaction/WriteTransaction.java
+++ b/src/main/java/org/caosdb/server/transaction/WriteTransaction.java
@@ -404,13 +404,12 @@ public class WriteTransaction extends Transaction<WritableContainer>
     }
 
     // entity role
-    if (newEntity.hasRole()
+    if (!(newEntity instanceof Property && oldEntity instanceof Property)
+            && newEntity.hasRole()
             && oldEntity.hasRole()
             && !newEntity.getRole().equals(oldEntity.getRole())
         || newEntity.hasRole() ^ oldEntity.hasRole()) {
-      if (!(newEntity instanceof Property && oldEntity instanceof Property)) {
-        needPermissions.add(EntityPermission.UPDATE_ROLE);
-      }
+      needPermissions.add(EntityPermission.UPDATE_ROLE);
       updatetable = true;
     }