Author: tilman
Date: Tue Sep 15 12:00:07 2026
New Revision: 1938245
Log:
PDFBOX-6265: protect against extreme decodeParms values (rest)
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/Predictor.java
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/Predictor.java
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/Predictor.java
Tue Sep 15 11:37:40 2026 (r1938244)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/Predictor.java
Tue Sep 15 12:00:07 2026 (r1938245)
@@ -291,6 +291,23 @@ public final class Predictor
}
// PDFBOX-6265: prevent OOM with extreme values
long maxRowLength = 10_000_000L;
+ String sysProp =
System.getProperty(Filter.SYSPROP_PREDICTOR_MAX_ROW_LENGTH);
+ if (sysProp != null)
+ {
+ try
+ {
+ long parsed = Long.parseLong(sysProp);
+ if (parsed > 0)
+ {
+ maxRowLength = parsed;
+ }
+ // else ignore zero/negative values
+ }
+ catch (NumberFormatException e)
+ {
+ // ignore invalid value, keep default
+ }
+ }
if (rowLength > maxRowLength)
{
String msg =