[MPMD-382] Regression in report rendering
diff --git a/src/main/java/org/apache/maven/plugins/pmd/PmdReportRenderer.java b/src/main/java/org/apache/maven/plugins/pmd/PmdReportRenderer.java
index e72c139..1665f2c 100644
--- a/src/main/java/org/apache/maven/plugins/pmd/PmdReportRenderer.java
+++ b/src/main/java/org/apache/maven/plugins/pmd/PmdReportRenderer.java
@@ -177,7 +177,10 @@
         sink.tableCell();
         addRuleName(ruleViolation);
         sink.tableCell_();
-        tableCell(ruleViolation.getText());
+        // May contain content not legit for #tableCell()
+        sink.tableCell();
+        sink.text(ruleViolation.getText());
+        sink.tableCell_();
 
         if (this.renderRuleViolationPriority) {
             tableCell(String.valueOf(
@@ -338,12 +341,17 @@
             PmdFileInfo fileInfo = determineFileInfo(filename);
             filename = shortenFilename(filename, fileInfo);
 
-            tableRow(new String[] {
-                filename,
-                suppressedViolation.getRuleMessage(),
-                suppressedViolation.getSuppressionType(),
-                suppressedViolation.getUserMessage()
-            });
+            // May contain content not legit for #tableCell()
+            sink.tableRow();
+            tableCell(filename);
+            sink.tableCell();
+            sink.text(suppressedViolation.getRuleMessage());
+            sink.tableCell_();
+            tableCell(suppressedViolation.getSuppressionType());
+            sink.tableCell();
+            sink.text(suppressedViolation.getUserMessage());
+            sink.tableCell_();
+            sink.tableRow_();
         }
 
         endTable();