Author: brett
Date: Thu Mar  9 18:47:31 2006
New Revision: 384684

URL: http://svn.apache.org/viewcvs?rev=384684&view=rev
Log:
[MNG-2099] fix anchor generation
Submitted by: Olivier Lamy

Modified:
    
maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/module/xdoc/XdocParser.java
    
maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/module/xhtml/XhtmlSink.java

Modified: 
maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/module/xdoc/XdocParser.java
URL: 
http://svn.apache.org/viewcvs/maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/module/xdoc/XdocParser.java?rev=384684&r1=384683&r2=384684&view=diff
==============================================================================
--- 
maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/module/xdoc/XdocParser.java
 (original)
+++ 
maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/module/xdoc/XdocParser.java
 Thu Mar  9 18:47:31 2006
@@ -83,6 +83,8 @@
                 }
                 else if ( parser.getName().equals( "section" ) )
                 {
+                    sink.anchor( parser.getAttributeValue( null, "name" ) );
+                    
                     sink.section1();
 
                     sink.sectionTitle1();
@@ -90,9 +92,13 @@
                     sink.text( parser.getAttributeValue( null, "name" ) );
 
                     sink.sectionTitle1_();
+
+                    
                 }
                 else if ( parser.getName().equals( "subsection" ) )
                 {
+                    sink.anchor( parser.getAttributeValue( null, "name" ) );
+                    
                     sink.section2();
 
                     sink.sectionTitle2();
@@ -100,6 +106,8 @@
                     sink.text( parser.getAttributeValue( null, "name" ) );
 
                     sink.sectionTitle2_();
+                    
+                    
                 }
                 else if ( parser.getName().equals( "p" ) )
                 {

Modified: 
maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/module/xhtml/XhtmlSink.java
URL: 
http://svn.apache.org/viewcvs/maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/module/xhtml/XhtmlSink.java?rev=384684&r1=384683&r2=384684&view=diff
==============================================================================
--- 
maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/module/xhtml/XhtmlSink.java
 (original)
+++ 
maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/module/xhtml/XhtmlSink.java
 Thu Mar  9 18:47:31 2006
@@ -20,6 +20,7 @@
 import org.apache.maven.doxia.module.xhtml.decoration.render.RenderingContext;
 import org.apache.maven.doxia.parser.Parser;
 import org.apache.maven.doxia.sink.StructureSink;
+import org.apache.maven.doxia.util.StringUtil;
 import org.codehaus.plexus.util.StringUtils;
 
 import java.io.PrintWriter;
@@ -532,7 +533,6 @@
         write( cellWidth + " >" );
     }
 
-
     public void tableCell_()
     {
         tableCell_( false );
@@ -583,7 +583,6 @@
         write( " />" );
     }
 
-
     /**
      * @see org.apache.maven.doxia.sink.SinkAdapter#figureCaption()
      */
@@ -608,18 +607,16 @@
         write( " src=\"" + name + "\"" );
     }
 
+    
     public void anchor( String name )
     {
         if ( !headFlag )
         {
-            if ( name != null && !name.startsWith( "#" ) )
-            {
-                write( "<a name=\"#" + name + "\">" );
-            }
-            else
+            if (StringUtils.isEmpty( name ))
             {
-                write( "<a name=\"" + name + "\">" );
+                return;
             }
+            write( "<a name=\"" + name + "\">" );
         }
     }
 


Reply via email to