Author: tilman
Date: Sat Aug 30 19:20:31 2025
New Revision: 1928137
Log:
PDFBOX-5660: optimize, as suggested by Valery Bokov; closes #237
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/common/PDNumberTreeNode.java
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/common/PDNumberTreeNode.java
==============================================================================
---
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/common/PDNumberTreeNode.java
Sat Aug 30 19:03:06 2025 (r1928136)
+++
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/common/PDNumberTreeNode.java
Sat Aug 30 19:20:31 2025 (r1928137)
@@ -180,12 +180,13 @@ public class PDNumberTreeNode implements
COSArray numbersArray = node.getCOSArray(COSName.NUMS);
if (numbersArray != null)
{
- indices = new HashMap<>();
- if (numbersArray.size() % 2 != 0)
+ int size = numbersArray.size();
+ indices = new HashMap<>(size / 2);
+ if (size % 2 != 0)
{
- LOG.warn("Numbers array has odd size: {}",
numbersArray.size());
+ LOG.warn("Numbers array has odd size: {}", size);
}
- for (int i = 0; i + 1 < numbersArray.size(); i += 2)
+ for (int i = 0; i + 1 < size; i += 2)
{
COSBase base = numbersArray.getObject(i);
if (!(base instanceof COSInteger))