From f95ebe2224efd854f2034ff3360b0a017ce5b028 Mon Sep 17 00:00:00 2001 From: Glavo Date: Wed, 6 Aug 2025 20:43:51 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=20GetTask=20=E4=B8=AD=20Byte?= =?UTF-8?q?ArrayOutputStream=20=E7=9A=84=E5=88=9D=E5=A7=8B=E5=A4=A7?= =?UTF-8?q?=E5=B0=8F=20(#4209)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- HMCLCore/src/main/java/org/jackhuang/hmcl/task/GetTask.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/task/GetTask.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/task/GetTask.java index ebf430e5a..2558368e1 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/task/GetTask.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/task/GetTask.java @@ -60,9 +60,10 @@ public final class GetTask extends FetchTask { @Override protected Context getContext(URLConnection connection, boolean checkETag, String bmclapiHash) { - return new Context() { - final ByteArrayOutputStream baos = new ByteArrayOutputStream(); + int length = connection.getContentLength(); + final var baos = new ByteArrayOutputStream(length <= 0 ? 8192 : length); + return new Context() { @Override public void write(byte[] buffer, int offset, int len) { baos.write(buffer, offset, len);