You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by ml...@apache.org on 2006/08/01 15:21:07 UTC
svn commit: r427572 - in
/incubator/harmony/enhanced/classlib/trunk/modules/jndi/src:
main/java/javax/naming/CompoundName.java
test/java/org/apache/harmony/jndi/tests/javax/naming/CompoundNameTest.java
Author: mloenko
Date: Tue Aug 1 06:21:06 2006
New Revision: 427572
URL: http://svn.apache.org/viewvc?rev=427572&view=rev
Log:
applied patch for HARMONY-1021
[classlib][jndi] unexpected ArrayIndexOutOfBoundsException for CompoundName.add(int, null)
Modified:
incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/main/java/javax/naming/CompoundName.java
incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/test/java/org/apache/harmony/jndi/tests/javax/naming/CompoundNameTest.java
Modified: incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/main/java/javax/naming/CompoundName.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/main/java/javax/naming/CompoundName.java?rev=427572&r1=427571&r2=427572&view=diff
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/main/java/javax/naming/CompoundName.java (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/main/java/javax/naming/CompoundName.java Tue Aug 1 06:21:06 2006
@@ -661,6 +661,9 @@
}
public Name add(String element) throws InvalidNameException {
+ if (element == null) {
+ throw new InvalidNameException("A flat name can only have a single component");
+ }
elem.add(element);
return this;
}
@@ -678,6 +681,9 @@
* this <code>CompoundName</code> becoming invalid.
*/
public Name add(int index, String element) throws InvalidNameException {
+ if (element == null) {
+ throw new InvalidNameException("A flat name can only zero or one component");
+ }
validateIndex(index, true);
elem.add(index, element);
return this;
Modified: incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/test/java/org/apache/harmony/jndi/tests/javax/naming/CompoundNameTest.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/test/java/org/apache/harmony/jndi/tests/javax/naming/CompoundNameTest.java?rev=427572&r1=427571&r2=427572&view=diff
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/test/java/org/apache/harmony/jndi/tests/javax/naming/CompoundNameTest.java (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/test/java/org/apache/harmony/jndi/tests/javax/naming/CompoundNameTest.java Tue Aug 1 06:21:06 2006
@@ -1114,7 +1114,12 @@
CompoundName name;
name = new CompoundName("", props);
- name.add(null);
+ try {
+ name.add(null);
+ fail("InvalidNameException expected");
+ } catch (InvalidNameException e) {
+ //expected
+ }
}
public void testAdd_Indexed() throws InvalidNameException {
@@ -1146,7 +1151,21 @@
CompoundName name;
name = new CompoundName("", props);
- name.add(0, null);
+ try {
+ name.add(0, null);
+ fail("InvalidNameException expected");
+ } catch (InvalidNameException e) {
+ //expected
+ }
+
+ // regression test for HARMONY-1021
+ name = new CompoundName("", props);
+ try {
+ name.add(11, null);
+ fail("InvalidNameException expected");
+ } catch (InvalidNameException e) {
+ //expected
+ }
}
public void testRemove() throws InvalidNameException {