Author: tilman Date: Sun Aug 17 10:23:03 2025 New Revision: 1927831 Log: PDFBOX-5660: refactor, as suggested by Valery Bokov; closes #211
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDPageTree.java Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDPageTree.java ============================================================================== --- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDPageTree.java Sun Aug 17 10:17:59 2025 (r1927830) +++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDPageTree.java Sun Aug 17 10:23:03 2025 (r1927831) @@ -28,6 +28,7 @@ import org.apache.pdfbox.cos.COSName; import org.apache.pdfbox.pdmodel.common.COSObjectable; import java.util.ArrayList; +import java.util.Collections; import java.util.HashSet; import java.util.List; import java.util.NoSuchElementException; @@ -148,16 +149,17 @@ public class PDPageTree implements COSOb */ private List<COSDictionary> getKids(COSDictionary node) { - List<COSDictionary> result = new ArrayList<>(); - COSArray kids = node.getCOSArray(COSName.KIDS); if (kids == null) { // probably a malformed PDF - return result; + return Collections.emptyList(); } - for (int i = 0, size = kids.size(); i < size; i++) + int size = kids.size(); + List<COSDictionary> result = new ArrayList<>(size); + + for (int i = 0; i < size; i++) { COSBase base = kids.getObject(i); if (base instanceof COSDictionary)