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; }