Skip to content

Commit 26287f1

Browse files
author
Kate Ivanova
committed
Add test for infinite loop when copying outlines
DEVSIX-5076
1 parent 98c021c commit 26287f1

File tree

2 files changed

+21
-0
lines changed

2 files changed

+21
-0
lines changed

kernel/src/test/java/com/itextpdf/kernel/utils/PdfMergerTest.java

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ This file is part of the iText (R) project.
6060
import javax.xml.parsers.ParserConfigurationException;
6161
import org.junit.Assert;
6262
import org.junit.BeforeClass;
63+
import org.junit.Ignore;
6364
import org.junit.Test;
6465
import org.junit.experimental.categories.Category;
6566
import org.xml.sax.SAXException;
@@ -400,6 +401,26 @@ public void mergePdfWithComplexOCGTwiceTest() throws IOException, InterruptedExc
400401
Assert.assertNull(new CompareTool().compareByContent(outPdf, cmpPdf, destinationFolder));
401402
}
402403

404+
@Test
405+
@Ignore ("TODO: DEVSIX-5064 (when doing merge with outlines infinite loop occurs )")
406+
public void mergeOutlinesWithWrongStructureTest() throws IOException, InterruptedException {
407+
PdfDocument inputDoc = new PdfDocument(new PdfReader(
408+
sourceFolder + "infiniteLoopInOutlineStructure.pdf"));
409+
410+
PdfDocument outputDoc = new PdfDocument(new PdfWriter(
411+
destinationFolder + "infiniteLoopInOutlineStructure.pdf"));
412+
413+
PdfMerger merger = new PdfMerger(outputDoc, false, true);
414+
System.out.println("Doing merge");
415+
merger.merge(inputDoc, 1, 2);
416+
merger.close();
417+
System.out.println("Merge done");
418+
419+
Assert.assertNull(new CompareTool().compareByContent(
420+
destinationFolder + "infiniteLoopInOutlineStructure.pdf",
421+
sourceFolder + "cmp_infiniteLoopInOutlineStructure.pdf", destinationFolder));
422+
}
423+
403424
private void mergePdfs(List<File> sources, String destination) throws IOException {
404425
PdfDocument mergedDoc = new PdfDocument(new PdfWriter(destination));
405426
PdfMerger merger = new PdfMerger(mergedDoc);

0 commit comments

Comments
 (0)