This is an automated email from the ASF dual-hosted git repository.
tallison pushed a commit to branch branch_1x
in repository https://gitbox.apache.org/repos/asf/tika.git
The following commit(s) were added to refs/heads/branch_1x by this push:
new f52757f TIKA-3020 -- fix bug in <tr> handling in KeynoteContentHandler
f52757f is described below
commit f52757ff2b1162d4f14902077b2166770d6eb722
Author: tallison <[email protected]>
AuthorDate: Mon Jan 6 15:53:22 2020 -0500
TIKA-3020 -- fix bug in <tr> handling in KeynoteContentHandler
---
.../org/apache/tika/parser/iwork/KeynoteContentHandler.java | 3 ++-
.../java/org/apache/tika/parser/iwork/IWorkParserTest.java | 13 +++++++++++++
2 files changed, 15 insertions(+), 1 deletion(-)
diff --git
a/tika-parsers/src/main/java/org/apache/tika/parser/iwork/KeynoteContentHandler.java
b/tika-parsers/src/main/java/org/apache/tika/parser/iwork/KeynoteContentHandler.java
index c60f955..0096ba4 100644
---
a/tika-parsers/src/main/java/org/apache/tika/parser/iwork/KeynoteContentHandler.java
+++
b/tika-parsers/src/main/java/org/apache/tika/parser/iwork/KeynoteContentHandler.java
@@ -163,11 +163,12 @@ class KeynoteContentHandler extends DefaultHandler {
if (currentColumn == 0) {
xhtml.startElement("tr");
}
-
xhtml.element("td", value);
+ currentColumn++;
if (currentColumn.equals(numberOfColumns)) {
xhtml.endElement("tr");
+ currentColumn = 0;
}
}
diff --git
a/tika-parsers/src/test/java/org/apache/tika/parser/iwork/IWorkParserTest.java
b/tika-parsers/src/test/java/org/apache/tika/parser/iwork/IWorkParserTest.java
index 2d835c5..b360d10 100644
---
a/tika-parsers/src/test/java/org/apache/tika/parser/iwork/IWorkParserTest.java
+++
b/tika-parsers/src/test/java/org/apache/tika/parser/iwork/IWorkParserTest.java
@@ -375,4 +375,17 @@ public class IWorkParserTest extends TikaTest {
assertContains("Currency Chart name", content);
assertContains("Chart 2", content);
}
+
+ //TIKA-3020
+ @Test
+ public void testKeyNoteTableMarkup() throws Exception {
+ String expected = "<table><tr>\t<td>Cell one</td>\t<td>Cell
two</td>\t<td>Cell three</td></tr>" +
+ "<tr>\t<td>Cell four</td>\t<td>Cell 5</td>\t<td>Cell
six</td></tr>" +
+ "<tr>\t<td>7</td>\t<td>Cell
eight</td>\t<td>5/5/1985</td></tr>" +
+ "</table>";
+ String xml = getXML("testKeynote.key", iWorkParser).xml;
+ xml = xml.replaceAll("[\r\n]", "");
+ assertContains(expected, xml);
+
+ }
}