From 249f365384d6e9927fc8cd3e161a789bbaf0ed47 Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Fri, 13 Dec 2013 22:40:35 +0000
Subject: [PATCH] Backport fix for OPENDJ-1252: ReadSchema example throws NPE

---
 opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/Syntax.java |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/Syntax.java b/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/Syntax.java
index 33949db..15d74aa 100644
--- a/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/Syntax.java
+++ b/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/Syntax.java
@@ -318,7 +318,12 @@
             }
 
             if (impl == null) {
-                impl = schema.getDefaultSyntax().impl;
+                final Syntax defaultSyntax = schema.getDefaultSyntax();
+                if (defaultSyntax.impl == null) {
+                    // The default syntax was never validated.
+                    defaultSyntax.validate(schema, warnings);
+                }
+                impl = defaultSyntax.impl;
                 final LocalizableMessage message = WARN_ATTR_SYNTAX_NOT_IMPLEMENTED1
                         .get(getDescription(), oid, schema.getDefaultSyntax()
                                 .getOID());

--
Gitblit v1.10.0