diff --git a/config/alfresco/patch/patch-services-context.xml b/config/alfresco/patch/patch-services-context.xml
index e803dfa69a..46b3ed9f11 100644
--- a/config/alfresco/patch/patch-services-context.xml
+++ b/config/alfresco/patch/patch-services-context.xml
@@ -1053,6 +1053,11 @@
0
124
125
+
+
+
+
+
@@ -1632,7 +1637,6 @@
-
diff --git a/source/java/org/alfresco/repo/domain/permissions/ADMAccessControlListDAO.java b/source/java/org/alfresco/repo/domain/permissions/ADMAccessControlListDAO.java
index 35f9d5090d..a299843a6a 100644
--- a/source/java/org/alfresco/repo/domain/permissions/ADMAccessControlListDAO.java
+++ b/source/java/org/alfresco/repo/domain/permissions/ADMAccessControlListDAO.java
@@ -158,13 +158,12 @@ public class ADMAccessControlListDAO implements AccessControlListDAO
CounterSet result = new CounterSet();
// Do the children first
+ Acl existingAcl = null;
Long aclId = nodeDAO.getNodeAclId(nodeId);
- if (aclId == null)
+ if (aclId != null)
{
- // TODO: What happens here? It's causing NPEs
- throw new IllegalStateException("Null aclId is causing NPEs. Node: " + nodeId);
+ existingAcl = aclDaoComponent.getAcl(aclId);
}
- Acl existingAcl = aclDaoComponent.getAcl(aclId);
Long toInherit = null;
Long idToInheritFrom = null;
@@ -189,7 +188,7 @@ public class ADMAccessControlListDAO implements AccessControlListDAO
idToInheritFrom = newAcl.getId();
nodeDAO.setNodeAclId(nodeId, idToInheritFrom);
}
- if (existingAcl.getAclType() == ACLType.SHARED)
+ else if (existingAcl.getAclType() == ACLType.SHARED)
{
// nothing to do just cascade into the children - we most likely did a bulk set above.
}