You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by le...@apache.org on 2022/05/31 17:55:39 UTC
svn commit: r1901466 - /pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/ttf/RandomAccessReadDataStream.java
Author: lehmi
Date: Tue May 31 17:55:39 2022
New Revision: 1901466
URL: http://svn.apache.org/viewvc?rev=1901466&view=rev
Log:
PDFBOX-5435: fix array read
Modified:
pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/ttf/RandomAccessReadDataStream.java
Modified: pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/ttf/RandomAccessReadDataStream.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/ttf/RandomAccessReadDataStream.java?rev=1901466&r1=1901465&r2=1901466&view=diff
==============================================================================
--- pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/ttf/RandomAccessReadDataStream.java (original)
+++ pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/ttf/RandomAccessReadDataStream.java Tue May 31 17:55:39 2022
@@ -44,10 +44,12 @@ class RandomAccessReadDataStream extends
this.randomAccessRead = randomAccessRead;
length = randomAccessRead.length();
data = new byte[(int) length];
- int bytesRead = randomAccessRead.read(data, 0, (int) length);
- while (bytesRead > -1 && bytesRead < length)
+ int remainingBytes = data.length;
+ int amountRead;
+ while ((amountRead = randomAccessRead.read(data, data.length - remainingBytes,
+ remainingBytes)) > 0)
{
- bytesRead += randomAccessRead.read(data, bytesRead, (int) length - bytesRead);
+ remainingBytes -= amountRead;
}
randomAccessRead.seek(0);
}