Author: ltheussl
Date: Wed Apr 29 08:11:11 2009
New Revision: 769701
URL: http://svn.apache.org/viewvc?rev=769701&view=rev
Log:
[DOXIA-308] encodeId returns an empty string which is not a valid id
Modified:
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java
maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java
Modified:
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java
URL:
http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java?rev=769701&r1=769700&r2=769701&view=diff
==============================================================================
---
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java
(original)
+++
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java
Wed Apr 29 08:11:11 2009
@@ -149,7 +149,8 @@
* </p>
* <pre>
* DoxiaUtils.encodeId( null ) = null
- * DoxiaUtils.encodeId( "" ) = ""
+ * DoxiaUtils.encodeId( "" ) = "a"
+ * DoxiaUtils.encodeId( " " ) = "a"
* DoxiaUtils.encodeId( " _ " ) = "a_"
* DoxiaUtils.encodeId( "1" ) = "a1"
* DoxiaUtils.encodeId( "1anchor" ) = "a1anchor"
@@ -163,6 +164,7 @@
* @param chop true if non-ASCII characters should be ignored.
* If false, any non-ASCII characters will be replaced as specified above.
* @return The trimmed and encoded id, or null if id is null.
+ * If id is not null, the return value is guaranteed to be a valid Doxia
id.
*
* @since 1.1.1
*/
@@ -175,6 +177,12 @@
id = id.trim();
int length = id.length();
+
+ if ( length == 0 )
+ {
+ return "a";
+ }
+
StringBuffer buffer = new StringBuffer( length );
for ( int i = 0; i < length; ++i )
Modified:
maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java
URL:
http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java?rev=769701&r1=769700&r2=769701&view=diff
==============================================================================
---
maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java
(original)
+++
maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java
Wed Apr 29 08:11:11 2009
@@ -145,8 +145,8 @@
public void testEncodeId()
{
assertEquals( DoxiaUtils.encodeId( null ), null );
- assertEquals( DoxiaUtils.encodeId( "" ), "" );
- assertEquals( DoxiaUtils.encodeId( " " ), "" );
+ assertEquals( DoxiaUtils.encodeId( "" ), "a" );
+ assertEquals( DoxiaUtils.encodeId( " " ), "a" );
assertEquals( DoxiaUtils.encodeId( " _ " ), "a_" );
assertEquals( DoxiaUtils.encodeId( "1" ), "a1" );
assertEquals( DoxiaUtils.encodeId( "1anchor" ), "a1anchor" );