PDFBOX-5111: simplify implementation
git-svn-id: https://svn.apache.org/repos/asf/pdfbox/trunk@1886983 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessReadBuffer.java b/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessReadBuffer.java
index 6a8221d..e347502 100644
--- a/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessReadBuffer.java
+++ b/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessReadBuffer.java
@@ -105,28 +105,21 @@
int remainingBytes = chunkSize;
int offset = 0;
byte[] eofCheck = new byte[1];
- while (true)
+ while ((bytesRead = input.read(currentBuffer.array(), offset, remainingBytes)) > -1)
{
- while (remainingBytes > 0
- && (bytesRead = input.read(currentBuffer.array(), offset, remainingBytes)) > -1)
- {
- remainingBytes -= bytesRead;
- offset += bytesRead;
- }
- size += offset;
+ remainingBytes -= bytesRead;
+ offset += bytesRead;
+ size += bytesRead;
if (remainingBytes == 0 && input.read(eofCheck) > 0)
{
expandBuffer();
currentBuffer.put(eofCheck);
offset = 1;
remainingBytes = chunkSize - 1;
- }
- else
- {
- currentBuffer.limit(offset);
- break;
+ size++;
}
}
+ currentBuffer.limit(offset);
seek(0);
}