Skip to content

Commit f07a1ab

Browse files
committed
Check size after read
1 parent f4c9bd0 commit f07a1ab

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

src/test/java/com/maxmind/db/MultiBufferTest.java

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,11 +91,21 @@ static MultiBuffer createBuffer(int chunkSize) {
9191
buffers[totalChunks - 1] = ByteBuffer.allocate(remainder);
9292
}
9393

94-
for (ByteBuffer buffer : buffers) {
95-
channel.read(buffer);
94+
var totalRead = 0L;
95+
for (var buffer : buffers) {
96+
var read = channel.read(buffer);
97+
if (read == -1) {
98+
break;
99+
}
100+
totalRead += read;
96101
buffer.flip();
97102
}
98103

104+
if (totalRead != size) {
105+
throw new IOException("Unable to read test data into memory. "
106+
+ "Expected " + size + " bytes but read " + totalRead + " bytes.");
107+
}
108+
99109
return new MultiBuffer(buffers, chunkSize);
100110
}
101111
} catch (IOException e) {

0 commit comments

Comments
 (0)