From a0f9da7fb6c53c5b09b7c9970987b977d77f43d9 Mon Sep 17 00:00:00 2001 From: Andreas Beeker Date: Thu, 29 Oct 2015 23:22:54 +0000 Subject: [PATCH] #58516 - Rare new aioobe in 3.13 on initialization of a handful of ppts git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1711381 13f79535-47bb-0310-9956-ffa450edef68 --- .../org/apache/poi/hslf/usermodel/TestBugs.java | 11 +++++++++-- test-data/slideshow/bug58516.ppt | Bin 0 -> 63488 bytes 2 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 test-data/slideshow/bug58516.ppt diff --git a/src/scratchpad/testcases/org/apache/poi/hslf/usermodel/TestBugs.java b/src/scratchpad/testcases/org/apache/poi/hslf/usermodel/TestBugs.java index 527b92e1c5..bb150f7fda 100644 --- a/src/scratchpad/testcases/org/apache/poi/hslf/usermodel/TestBugs.java +++ b/src/scratchpad/testcases/org/apache/poi/hslf/usermodel/TestBugs.java @@ -35,8 +35,6 @@ import java.util.List; import java.util.Map; import java.util.Set; -import junit.framework.AssertionFailedError; - import org.apache.poi.POIDataSamples; import org.apache.poi.ddf.AbstractEscherOptRecord; import org.apache.poi.ddf.EscherArrayProperty; @@ -51,11 +49,15 @@ import org.apache.poi.hslf.record.SlideListWithText; import org.apache.poi.hslf.record.SlideListWithText.SlideAtomsSet; import org.apache.poi.hslf.record.TextHeaderAtom; import org.apache.poi.sl.usermodel.PictureData.PictureType; +import org.apache.poi.sl.usermodel.SlideShow; +import org.apache.poi.sl.usermodel.SlideShowFactory; import org.apache.poi.util.LittleEndian; import org.apache.poi.util.StringUtil; import org.apache.poi.util.Units; import org.junit.Test; +import junit.framework.AssertionFailedError; + /** * Testcases for bugs entered in bugzilla * the Test name contains the bugzilla bug id @@ -637,4 +639,9 @@ public final class TestBugs { inputStream.close(); } } + + @Test + public void bug58516() throws IOException { + SlideShowFactory.create(_slTests.getFile("bug58516.ppt")); + } } diff --git a/test-data/slideshow/bug58516.ppt b/test-data/slideshow/bug58516.ppt new file mode 100644 index 0000000000000000000000000000000000000000..b1cb7cd19ecc1171131f1eda60b00021dc13c96a GIT binary patch literal 63488 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 OmUCz3^32DP0{