You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by kw...@apache.org on 2021/06/21 09:08:18 UTC

[jackrabbit-filevault] branch master updated: JCRVLT-527 prevent potential NPE when validating against incomplete parent nodes

This is an automated email from the ASF dual-hosted git repository.

kwin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jackrabbit-filevault.git


The following commit(s) were added to refs/heads/master by this push:
     new 67aa42c  JCRVLT-527 prevent potential NPE when validating against incomplete parent nodes
67aa42c is described below

commit 67aa42c76fc0861c0f136d336ab4471a47965f41
Author: Konrad Windszus <kw...@apache.org>
AuthorDate: Mon Jun 21 11:08:11 2021 +0200

    JCRVLT-527 prevent potential NPE when validating against incomplete
    parent nodes
---
 .../vault/validation/spi/impl/nodetype/JcrNodeTypeMetaDataImpl.java    | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/JcrNodeTypeMetaDataImpl.java b/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/JcrNodeTypeMetaDataImpl.java
index e62d5ca..bd675f8 100644
--- a/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/JcrNodeTypeMetaDataImpl.java
+++ b/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/JcrNodeTypeMetaDataImpl.java
@@ -302,6 +302,9 @@ public class JcrNodeTypeMetaDataImpl implements JcrNodeTypeMetaData {
     private Optional<String> validateAgainstParentNodeType(@Nullable EffectiveNodeType parentEffectiveNodeType,
             @NotNull NodeTypeDefinitionProvider nodeTypeDefinitionProvider,
             @NotNull ItemDefinitionProvider itemDefinitionProvider) throws RepositoryException {
+        if (effectiveNodeType == null || primaryNodeType == null) {
+            return Optional.empty();
+        }
         // except for ACL node types (for which the mixin rep:AccessControllable is transparently added) everything must comply with the
         // parent node rules
         if (effectiveNodeType.includesNodeType(NT_REP_POLICY)) {