Author: tilman
Date: Wed Jul 22 12:49:37 2026
New Revision: 1936473
Log:
PDFBOX-5660: Sonar fix (avoid NPE, AIOOBE)
Modified:
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/fdf/FDFOptionElement.java
Modified:
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/fdf/FDFOptionElement.java
==============================================================================
---
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/fdf/FDFOptionElement.java
Wed Jul 22 12:45:04 2026 (r1936472)
+++
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/fdf/FDFOptionElement.java
Wed Jul 22 12:49:37 2026 (r1936473)
@@ -80,7 +80,15 @@ public class FDFOptionElement implements
*/
public String getOption()
{
- return ((COSString) option.getObject(0)).getString();
+ if (option != null && option.size() > 0)
+ {
+ COSBase base = option.getObject(0);
+ if (base instanceof COSString)
+ {
+ return ((COSString) base).getString();
+ }
+ }
+ return "";
}
/**
@@ -90,6 +98,7 @@ public class FDFOptionElement implements
*/
public void setOption(String opt)
{
+ option.growToSize(1);
option.set(0, new COSString(opt));
}
@@ -100,7 +109,15 @@ public class FDFOptionElement implements
*/
public String getDefaultAppearanceString()
{
- return ((COSString) option.getObject(1)).getString();
+ if (option != null && option.size() > 1)
+ {
+ COSBase base = option.getObject(1);
+ if (base instanceof COSString)
+ {
+ return ((COSString) base).getString();
+ }
+ }
+ return "";
}
/**
@@ -110,6 +127,7 @@ public class FDFOptionElement implements
*/
public void setDefaultAppearanceString(String da)
{
+ option.growToSize(2);
option.set(1, new COSString(da));
}
}