Author: tilman
Date: Wed Jul 22 12:18:18 2026
New Revision: 1936470
Log:
PDFBOX-5660: Sonar fix (avoid NPE), fix imports
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/common/function/PDFunctionType4.java
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/common/function/PDFunctionType4.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/common/function/PDFunctionType4.java
Wed Jul 22 12:18:15 2026 (r1936469)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/common/function/PDFunctionType4.java
Wed Jul 22 12:18:18 2026 (r1936470)
@@ -16,14 +16,15 @@
*/
package org.apache.pdfbox.pdmodel.common.function;
+import java.io.IOException;
+
import org.apache.pdfbox.cos.COSBase;
import org.apache.pdfbox.pdmodel.common.PDRange;
import org.apache.pdfbox.pdmodel.common.function.type4.ExecutionContext;
import org.apache.pdfbox.pdmodel.common.function.type4.InstructionSequence;
import
org.apache.pdfbox.pdmodel.common.function.type4.InstructionSequenceBuilder;
import org.apache.pdfbox.pdmodel.common.function.type4.Operators;
-
-import java.io.IOException;
+import org.apache.pdfbox.pdmodel.common.PDStream;
/**
* This class represents a Type 4 (PostScript calculator) function in a PDF
document.
@@ -46,8 +47,9 @@ public class PDFunctionType4 extends PDF
*/
public PDFunctionType4(COSBase functionStream) throws IOException
{
- super( functionStream );
- byte[] bytes = getPDStream().toByteArray();
+ super(functionStream);
+ PDStream strm = getPDStream();
+ byte[] bytes = strm == null ? new byte[0] : strm.toByteArray();
String string = new String(bytes, "ISO-8859-1");
this.instructions = InstructionSequenceBuilder.parse(string);
}
@@ -55,6 +57,7 @@ public class PDFunctionType4 extends PDF
/**
* {@inheritDoc}
*/
+ @Override
public int getFunctionType()
{
return 4;
@@ -63,6 +66,7 @@ public class PDFunctionType4 extends PDF
/**
* {@inheritDoc}
*/
+ @Override
public float[] eval(float[] input) throws IOException
{
//Setup the input values