[ 
https://issues.apache.org/jira/browse/PDFBOX-3999?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16319140#comment-16319140
 ] 

Tilman Hausherr commented on PDFBOX-3999:
-----------------------------------------

Indeed, the changes made are mostly about the test. You mentioned in the other 
issue that you wanted to contribute something later. So it's TDD but without 
the real code being improved, only the tests.

I haven't worked much on the merge myself because I haven't understood 
everything about tagged PDFs.

> Merge failed to clone tags
> --------------------------
>
>                 Key: PDFBOX-3999
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-3999
>             Project: PDFBox
>          Issue Type: Bug
>          Components: Utilities
>    Affects Versions: 2.0.8
>            Reporter: Dave Hill
>            Priority: Critical
>              Labels: StructureTree, merge
>         Attachments: GeneralForbearance.pdf, GovFormPreFlattened.pdf, 
> pdfbox.patch
>
>
> After merging two tagged documents, closing the source document causes the 
> destination document to be closed, which prevents it from being saved. The 
> following code demonstrates the bug with the attached flattened government 
> PDF file. The original is available 
> [here|https://studentloans.gov/myDirectLoan/downloadForm.action?searchType=library&shortName=general&localeCode=en-us]
>  if you need it.
> {code}
> @Test
> public void testMerge() throws Exception {
>     PDFMergerUtility pdfMergerUtility = new PDFMergerUtility();
>     PDDocument src = PDDocument.load(new File("GovFormPreFlattened.pdf"));
>     PDDocument dest = PDDocument.load(new File("GovFormPreFlattened.pdf"));
>     pdfMergerUtility.appendDocument(dest, src);
>     src.close(); //if we don't close the src then we don't have an error
>     dest.save(File.createTempFile("MergeIssue",".PDF"));
>     dest.close();
> }
> {code}
> The issue is resolved with the attached patch.
> Also I removed the "if (mergeStructTree)" is because mergeStructTree is 
> always true here because this code is already inside an "if 
> (mergeStructTree)".



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to