Author: tilman
Date: Sun Aug 17 10:23:07 2025
New Revision: 1927832
Log:
PDFBOX-5660: refactor, as suggested by Valery Bokov; closes #211
Modified:
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDPageTree.java
Modified:
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDPageTree.java
==============================================================================
---
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDPageTree.java
Sun Aug 17 10:23:03 2025 (r1927831)
+++
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDPageTree.java
Sun Aug 17 10:23:07 2025 (r1927832)
@@ -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)