Index: modules/jndi/src/main/java/javax/naming/directory/SearchResult.java =================================================================== --- modules/jndi/src/main/java/javax/naming/directory/SearchResult.java (revision 490073) +++ modules/jndi/src/main/java/javax/naming/directory/SearchResult.java (working copy) @@ -19,6 +19,8 @@ import javax.naming.Binding; +import org.apache.harmony.jndi.internal.nls.Messages; + /** * SearchResult returned from a search on a directory context * and is provided by a NaminEnumeration. @@ -176,7 +178,13 @@ Attributes attributes, boolean flag) { super(s, s1, o, flag); - this.attrs = attributes; + + if (attributes == null) { + // jndi.8C=attrs must not be null + throw new IllegalArgumentException(Messages.getString("jndi.8C")); //$NON-NLS-1$ + } else { + this.attrs = attributes; + } } /* @@ -200,7 +208,12 @@ * @param attributes an attributes. It should not be null. */ public void setAttributes(Attributes attributes) { - attrs = attributes; + if (attributes == null) { + // jndi.8C=attrs must not be null + throw new IllegalArgumentException(Messages.getString("jndi.8C")); //$NON-NLS-1$ + } else { + this.attrs = attributes; + } } /* @@ -223,7 +236,4 @@ .append(attrs.toString()) .toString(); } - } - - Index: modules/jndi/src/main/java/org/apache/harmony/jndi/internal/nls/messages.properties =================================================================== --- modules/jndi/src/main/java/org/apache/harmony/jndi/internal/nls/messages.properties (revision 490073) +++ modules/jndi/src/main/java/org/apache/harmony/jndi/internal/nls/messages.properties (working copy) @@ -154,5 +154,6 @@ jndi.88=Interface hash mismatch, expected: {0}, received: {1} jndi.89=Error marshalling return jndi.8A=Invalid method number: {0} +jndi.8C=attrs must not be null jndi.err.00=. The stack trace of the root exception is: