From: Tim Allison Date: Thu, 9 Aug 2018 15:50:34 +0000 (+0000) Subject: bug 62591 -- revert to ignoring place holders even if they contain metroblobs in ppt X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=5e241fdd3cf705a6e65fc15373b7e1ec4effd0e2;p=poi.git bug 62591 -- revert to ignoring place holders even if they contain metroblobs in ppt git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1837742 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFTextShape.java b/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFTextShape.java index d3dbf144ef..412bc1ff49 100644 --- a/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFTextShape.java +++ b/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFTextShape.java @@ -704,10 +704,7 @@ implements TextShape { return ((getPlaceholderAtom() != null) || //special case for files saved in Office 2007 - (getHFPlaceholderAtom() != null)) && - // check for metro shape of complex placeholder - (!new HSLFMetroShape(this).hasMetroBlob()) - ; + (getHFPlaceholderAtom() != null)); } diff --git a/src/scratchpad/testcases/org/apache/poi/hslf/extractor/TestExtractor.java b/src/scratchpad/testcases/org/apache/poi/hslf/extractor/TestExtractor.java index 9a420a6e26..1f709d969b 100644 --- a/src/scratchpad/testcases/org/apache/poi/hslf/extractor/TestExtractor.java +++ b/src/scratchpad/testcases/org/apache/poi/hslf/extractor/TestExtractor.java @@ -309,7 +309,6 @@ public final class TestExtractor { } } - @SuppressWarnings("unused") @Test public void testSlideMasterText() throws IOException { String masterTitleText = "This is the Master Title"; @@ -320,7 +319,25 @@ public final class TestExtractor { String text = ppe.getText(); assertContains(text, masterRandomText); - assertContains(text, masterFooterText); + assertNotContained(text, masterTitleText); + + //make sure that the footer only appears once + int masterFooters = 0; + int offset = text.indexOf(masterFooterText); + while (offset > -1) { + masterFooters++; + offset = text.indexOf(masterFooterText, offset+1); + } + assertEquals(1, masterFooters); + } + } + + @Test + public void testSlideMasterText2() throws IOException { + try (final SlideShowExtractor ppe = openExtractor("bug62591.ppt")) { + ppe.setMasterByDefault(true); + String text = ppe.getText(); + assertNotContained(text, "Titelmasterformat"); } } diff --git a/test-data/slideshow/bug62591.ppt b/test-data/slideshow/bug62591.ppt new file mode 100644 index 0000000000..44dac3fa3a Binary files /dev/null and b/test-data/slideshow/bug62591.ppt differ