You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by ak...@apache.org on 2007/01/05 04:21:37 UTC

svn commit: r492890 - in /directory/trunks/shared/ldap/src: main/java/org/apache/directory/shared/ldap/name/LdapDN.java test/java/org/apache/directory/shared/ldap/name/LdapDNTest.java

Author: akarasulu
Date: Thu Jan  4 19:21:36 2007
New Revision: 492890

URL: http://svn.apache.org/viewvc?view=rev&rev=492890
Log:
bypass normalization on empty string dn and do not allow add("") to generate a malformed RDN

Modified:
    directory/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/name/LdapDN.java
    directory/trunks/shared/ldap/src/test/java/org/apache/directory/shared/ldap/name/LdapDNTest.java

Modified: directory/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/name/LdapDN.java
URL: http://svn.apache.org/viewvc/directory/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/name/LdapDN.java?view=diff&rev=492890&r1=492889&r2=492890
==============================================================================
--- directory/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/name/LdapDN.java (original)
+++ directory/trunks/shared/ldap/src/main/java/org/apache/directory/shared/ldap/name/LdapDN.java Thu Jan  4 19:21:36 2007
@@ -1008,6 +1008,11 @@
     */
    public Name add( String comp ) throws InvalidNameException
    {
+       if ( comp.length() == 0 )
+       {
+           return this;
+       }
+       
        // We have to parse the nameComponent which is given as an argument
        Rdn newRdn = new Rdn( comp );
 
@@ -1423,6 +1428,11 @@
            return;
        }
 
+       if ( size() == 0 )
+       {
+           return;
+       }
+       
        Enumeration<Rdn> localRdns = getAllRdn();
 
        // Loop on all RDNs

Modified: directory/trunks/shared/ldap/src/test/java/org/apache/directory/shared/ldap/name/LdapDNTest.java
URL: http://svn.apache.org/viewvc/directory/trunks/shared/ldap/src/test/java/org/apache/directory/shared/ldap/name/LdapDNTest.java?view=diff&rev=492890&r1=492889&r2=492890
==============================================================================
--- directory/trunks/shared/ldap/src/test/java/org/apache/directory/shared/ldap/name/LdapDNTest.java (original)
+++ directory/trunks/shared/ldap/src/test/java/org/apache/directory/shared/ldap/name/LdapDNTest.java Thu Jan  4 19:21:36 2007
@@ -2767,11 +2767,20 @@
        assertEquals( "cn=xyz,cn=blah,dc=example,dc=com", ldapDn.toString() );
    }
    
+   
    public void testDNEquals() throws NamingException
    {
        LdapDN dn1 = new LdapDN( "a=b,c=d,e=f" );
        LdapDN dn2 = new LdapDN( "a=b\\,c\\=d,e=f" );
        
        assertFalse( dn1.toString().equals( dn2.toString() ) );
+   }
+   
+   
+   public void testDNAddEmptyString() throws NamingException
+   {
+       LdapDN dn = new LdapDN();
+       assertTrue( dn.size() == 0 );
+       assertTrue( dn.add( "" ).size() == 0 );
    }
 }