From 6891d3a095e411107dae0d7bca1b32c1232381ca Mon Sep 17 00:00:00 2001 From: opfromthestart Date: Fri, 6 Aug 2021 12:56:21 -0400 Subject: [PATCH] Trying to get it to work -Uses many streams to keep track of things -Fixed some bad things, still are a ton. --- .../progressia/test/TestWorldDiskIO.java | 53 +++++++++++-------- 1 file changed, 32 insertions(+), 21 deletions(-) diff --git a/src/main/java/ru/windcorp/progressia/test/TestWorldDiskIO.java b/src/main/java/ru/windcorp/progressia/test/TestWorldDiskIO.java index 842e7c1..8bed37a 100644 --- a/src/main/java/ru/windcorp/progressia/test/TestWorldDiskIO.java +++ b/src/main/java/ru/windcorp/progressia/test/TestWorldDiskIO.java @@ -238,30 +238,41 @@ public class TestWorldDiskIO { if (sectorLength == 0) { int outputLen = (int) output.length(); - offset = (int) (outputLen-fullOffset)/sectorSize; + offset = (int) (outputLen-fullOffset)/sectorSize+1; output.seek(shortOffset); output.writeInt(offset<<8); + output.seek(outputLen); + while (output.length()> 8; input.skipNBytes(fullOffset-shortOffset-offsetBytes-1); input.skipNBytes(sectorSize*offset); input.mark(sectorSize*sectorLength); - ChunkData chunk = ChunkIO.load(world, chunkPos, input, IOContext.SAVE); - readGenerationHint(chunk, input, server); + DataInputStream trueInput = new DataInputStream( + new InflaterInputStream(input)); + ChunkData chunk = ChunkIO.load(world, chunkPos, trueInput, IOContext.SAVE); + readGenerationHint(chunk, trueInput, server); return chunk; } }