From cdfae54ab9330034f5284064842acc8c6314cc16 Mon Sep 17 00:00:00 2001 From: huanghongxun Date: Tue, 22 Jan 2019 16:11:31 +0800 Subject: [PATCH] Fixed costly time consumption reading level.dat. Mentioned in #512 --- HMCLCore/src/main/java/org/jackhuang/hmcl/game/World.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/game/World.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/game/World.java index 67731635d..593842fde 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/game/World.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/game/World.java @@ -28,6 +28,7 @@ import org.jackhuang.hmcl.util.io.FileUtils; import org.jackhuang.hmcl.util.io.Unzipper; import org.jackhuang.hmcl.util.io.Zipper; +import java.io.BufferedInputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; @@ -194,7 +195,7 @@ public class World { } private static CompoundTag parseLevelDat(Path path) throws IOException { - try (InputStream is = new GZIPInputStream(Files.newInputStream(path))) { + try (InputStream is = new BufferedInputStream(new GZIPInputStream(Files.newInputStream(path)))) { Tag nbt = NBTIO.readTag(is); if (nbt instanceof CompoundTag) return (CompoundTag) nbt;