From 76a609d1477ec021959e3de6e73ef2153d16a5ff Mon Sep 17 00:00:00 2001 From: Nick Burch Date: Sun, 19 Sep 2010 11:52:20 +0000 Subject: [PATCH] Add test that shows that bug #45877 has already been fixed git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@998634 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/poi/hwpf/usermodel/TestProblems.java | 11 +++++++++++ test-data/document/Bug45877.doc | Bin 0 -> 62464 bytes 2 files changed, 11 insertions(+) create mode 100644 test-data/document/Bug45877.doc diff --git a/src/scratchpad/testcases/org/apache/poi/hwpf/usermodel/TestProblems.java b/src/scratchpad/testcases/org/apache/poi/hwpf/usermodel/TestProblems.java index 19e67a46db..6a3a12d75f 100644 --- a/src/scratchpad/testcases/org/apache/poi/hwpf/usermodel/TestProblems.java +++ b/src/scratchpad/testcases/org/apache/poi/hwpf/usermodel/TestProblems.java @@ -254,6 +254,17 @@ public final class TestProblems extends HWPFTestCase { assertEquals("\n", ext.getHeaderText()); assertEquals("", ext.getFooterText()); } + + /** + * Bug #45877 - problematic PAPX with no parent set + */ + public void testParagraphPAPXNoParent45877() throws Exception { + HWPFDocument doc = HWPFTestDataSamples.openSampleFile("Bug45877.doc"); + assertEquals(17, doc.getRange().numParagraphs()); + + assertEquals("First paragraph\r", doc.getRange().getParagraph(0).text()); + assertEquals("After Crashing Part\r", doc.getRange().getParagraph(13).text()); + } /** * Bug #48245 - don't include the text from the diff --git a/test-data/document/Bug45877.doc b/test-data/document/Bug45877.doc new file mode 100644 index 0000000000000000000000000000000000000000..af2d6eda143be6386361b360128c856eebb30548 GIT binary patch literal 62464 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