This is an automated email from the ASF dual-hosted git repository.

kwin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-doxia.git


The following commit(s) were added to refs/heads/master by this push:
     new 4d759fcc MarkdownSink: Prevent additional newlines when html tags are 
emitted
4d759fcc is described below

commit 4d759fccde25ca3a079d1d8f599e121981e2e900
Author: Konrad Windszus <[email protected]>
AuthorDate: Tue Mar 10 11:29:42 2026 +0100

    MarkdownSink: Prevent additional newlines when html tags are emitted
---
 .../apache/maven/doxia/module/markdown/MarkdownSink.java |  3 +++
 .../maven/doxia/module/markdown/MarkdownSinkTest.java    | 16 +++++++++++++---
 2 files changed, 16 insertions(+), 3 deletions(-)

diff --git 
a/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownSink.java
 
b/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownSink.java
index bda3edd6..9fa36f92 100644
--- 
a/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownSink.java
+++ 
b/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownSink.java
@@ -384,6 +384,9 @@ public class MarkdownSink extends Xhtml5BaseSink implements 
MarkdownMarkup {
         this.lineAwareWriter = lineAwareWriter;
         this.bufferingStackWriter = bufferingStackWriter;
         initInternal();
+        setInsertNewline(
+                false); // we want to control newlines on our own to prevent 
(mostly to not break encapsulating markdown
+        // tables)
     }
 
     private void initInternal() {
diff --git 
a/doxia-modules/doxia-module-markdown/src/test/java/org/apache/maven/doxia/module/markdown/MarkdownSinkTest.java
 
b/doxia-modules/doxia-module-markdown/src/test/java/org/apache/maven/doxia/module/markdown/MarkdownSinkTest.java
index a626b526..b5517b3d 100644
--- 
a/doxia-modules/doxia-module-markdown/src/test/java/org/apache/maven/doxia/module/markdown/MarkdownSinkTest.java
+++ 
b/doxia-modules/doxia-module-markdown/src/test/java/org/apache/maven/doxia/module/markdown/MarkdownSinkTest.java
@@ -26,6 +26,7 @@ import java.io.StringReader;
 import java.io.StringWriter;
 import java.io.Writer;
 
+import org.apache.maven.doxia.module.xdoc.XdocParser;
 import org.apache.maven.doxia.module.xhtml5.Xhtml5Parser;
 import org.apache.maven.doxia.parser.ParseException;
 import org.apache.maven.doxia.parser.Parser;
@@ -131,7 +132,7 @@ class MarkdownSinkTest extends AbstractSinkTest {
     }
 
     protected String getContentBlock() {
-        return "<main>" + EOL + "<div class=\"content\"></div></main>";
+        return "<main><div class=\"content\"></div></main>";
     }
 
     protected String getFooterBlock() {
@@ -700,11 +701,20 @@ class MarkdownSinkTest extends AbstractSinkTest {
             sink.verbatim_();
             sink.tableCell_();
             sink.tableRow_();
+            sink.tableRow();
+            sink.tableCell();
+            sink.verbatim(SinkEventAttributeSet.SOURCE);
+            sink.text("code with | and ` inside");
+            sink.verbatim_();
+            sink.tableCell_();
+            sink.tableRow_();
             sink.tableRows_();
             sink.table_();
         }
-        String expected =
-                "|   |" + EOL + "|---|" + EOL + "|<pre><code>code with | and ` 
inside</code></pre>|" + EOL + EOL;
+        String expected = "|   |" + EOL + "|---|" + EOL
+                + "|<pre><code>code with | and ` inside</code></pre>|" + EOL
+                + "|<pre><code>code with | and ` inside</code></pre>|" + EOL + 
EOL;
         assertEquals(expected, getSinkContent());
     }
+
 }

Reply via email to