Author: tilman
Date: Thu Jan 13 18:47:53 2022
New Revision: 1897013

URL: http://svn.apache.org/viewvc?rev=1897013&view=rev
Log:
PDFBOX-4892: LGTM fix

Modified:
    
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/filter/Predictor.java
    
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDCIDFontType2Embedder.java
    
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/LosslessFactory.java

Modified: 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/filter/Predictor.java
URL: 
http://svn.apache.org/viewvc/pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/filter/Predictor.java?rev=1897013&r1=1897012&r2=1897013&view=diff
==============================================================================
--- 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/filter/Predictor.java
 (original)
+++ 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/filter/Predictor.java
 Thu Jan 13 18:47:53 2022
@@ -73,7 +73,7 @@ public final class Predictor
                 }
                 if (bitsPerComponent == 16)
                 {
-                    for (int p = bytesPerPixel; p < rowlength; p += 2)
+                    for (int p = bytesPerPixel; p < rowlength - 1; p += 2)
                     {
                         int sub = ((actline[p] & 0xff) << 8) + (actline[p + 1] 
& 0xff);
                         int left = (((actline[p - bytesPerPixel] & 0xff) << 8)

Modified: 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDCIDFontType2Embedder.java
URL: 
http://svn.apache.org/viewvc/pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDCIDFontType2Embedder.java?rev=1897013&r1=1897012&r2=1897013&view=diff
==============================================================================
--- 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDCIDFontType2Embedder.java
 (original)
+++ 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDCIDFontType2Embedder.java
 Thu Jan 13 18:47:53 2022
@@ -548,9 +548,9 @@ final class PDCIDFontType2Embedder exten
 
     private COSArray getVerticalMetrics(int[] values) throws IOException
     {
-        if (values.length == 0)
+        if (values.length < 4)
         {
-            throw new IllegalArgumentException("length of values must be > 0");
+            throw new IllegalArgumentException("length of values must be >= 
4");
         }
 
         float scaling = 1000f / ttf.getHeader().getUnitsPerEm();
@@ -566,7 +566,7 @@ final class PDCIDFontType2Embedder exten
 
         State state = State.FIRST;
 
-        for (int i = 4; i < values.length; i += 4)
+        for (int i = 4; i < values.length - 3; i += 4)
         {
             long cid = values[i];
             if (cid == Integer.MIN_VALUE)

Modified: 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/LosslessFactory.java
URL: 
http://svn.apache.org/viewvc/pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/LosslessFactory.java?rev=1897013&r1=1897012&r2=1897013&view=diff
==============================================================================
--- 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/LosslessFactory.java
 (original)
+++ 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/LosslessFactory.java
 Thu Jan 13 18:47:53 2022
@@ -555,7 +555,7 @@ public final class LosslessFactory
                 byte[] targetValues, byte[] alphaImageData, int alphaPtr)
         {
             int itr = indexInTranferRow;
-            for (int i = 0; i < targetValues.length; i += 2)
+            for (int i = 0; i < targetValues.length - 1; i += 2)
             {
                 short val = transferRow[itr++];
                 targetValues[i] = (byte) ((val >> 8) & 0xFF);


Reply via email to