From 1af803ff0092e1fd7c87f2bebda59d1abad1f109 Mon Sep 17 00:00:00 2001 From: Graham Date: Tue, 14 Jan 2020 21:00:24 +0000 Subject: [PATCH] Add support for JarEntries with an unknown size --- .../java/org/apache/harmony/pack200/PackingUtils.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/apache/harmony/pack200/PackingUtils.java b/src/main/java/org/apache/harmony/pack200/PackingUtils.java index 689aec4..1e8e227 100644 --- a/src/main/java/org/apache/harmony/pack200/PackingUtils.java +++ b/src/main/java/org/apache/harmony/pack200/PackingUtils.java @@ -206,7 +206,14 @@ public class PackingUtils { // TODO: Should probably allow this throw new RuntimeException("Large Class!"); } else if (size < 0) { - size = 0; + byte[] temp = new byte[4096]; + try (ByteArrayOutputStream out = new ByteArrayOutputStream()) { + int len; + while ((len = inputStream.read(temp, 0, temp.length)) != -1) { + out.write(temp, 0, len); + } + return out.toByteArray(); + } } byte[] bytes = new byte[(int) size]; if (inputStream.read(bytes) != size) {