This is an automated email from the ASF dual-hosted git repository.
tallison pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tika.git
The following commit(s) were added to refs/heads/master by this push:
new 64f0f9c TIKA-3020 -- fix bug in <tr> handling in KeynoteContentHandler
64f0f9c is described below
commit 64f0f9c59cf50e69a39a4133091021b6c3872b57
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 4509cd2..40b3d60 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
@@ -164,11 +164,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 9fc6ace..cefc5ef 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
@@ -376,4 +376,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);
+
+ }
}