You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2024/05/02 08:48:00 UTC
svn commit: r1917468 - in /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf: PDFMergerUtility.java Splitter.java
Author: tilman
Date: Thu May 2 08:48:00 2024
New Revision: 1917468
URL: http://svn.apache.org/viewvc?rev=1917468&view=rev
Log:
PDFBOX-5809: avoid NPE
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/Splitter.java
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java?rev=1917468&r1=1917467&r2=1917468&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java Thu May 2 08:48:00 2024
@@ -1090,6 +1090,10 @@ public class PDFMergerUtility
PDStructureTreeRoot srcStructTree,
PDStructureTreeRoot destStructTree) throws IOException
{
+ if (srcStructTree == null)
+ {
+ return;
+ }
PDNameTreeNode<PDStructureElement> srcIDTree = srcStructTree.getIDTree();
if (srcIDTree == null)
{
@@ -1128,6 +1132,10 @@ public class PDFMergerUtility
static Map<String, PDStructureElement> getIDTreeAsMap(PDNameTreeNode<PDStructureElement> idTree)
throws IOException
{
+ if (idTree == null)
+ {
+ return new LinkedHashMap<>();
+ }
Map<String, PDStructureElement> names = idTree.getNames();
if (names == null)
{
@@ -1154,6 +1162,10 @@ public class PDFMergerUtility
static Map<Integer, COSObjectable> getNumberTreeAsMap(PDNumberTreeNode tree)
throws IOException
{
+ if (tree == null)
+ {
+ return new LinkedHashMap<>();
+ }
Map<Integer, COSObjectable> numbers = tree.getNumbers();
if (numbers == null)
{
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/Splitter.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/Splitter.java?rev=1917468&r1=1917467&r2=1917468&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/Splitter.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/Splitter.java Thu May 2 08:48:00 2024
@@ -798,6 +798,10 @@ public class Splitter
if (annotation instanceof PDAnnotationMarkup)
{
PDAnnotationPopup annotationPopup = ((PDAnnotationMarkup) annotation).getPopup();
+ if (annotationPopup == null)
+ {
+ continue;
+ }
COSDictionary clonedPopupDict = annotDictMap.get(annotationPopup.getCOSObject());
if (clonedPopupDict != null)
{