From 31433c14d509f4fd70c6afa9fc5947768fcba24d Mon Sep 17 00:00:00 2001 From: "Andrew C. Oliver" Date: Thu, 26 Jun 2003 22:16:28 +0000 Subject: [PATCH] rolled concurrency fix into branch git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/branches/REL_2_BRANCH@353162 13f79535-47bb-0310-9956-ffa450edef68 --- .../org/apache/poi/util/LittleEndian.java | 32 ++----------------- 1 file changed, 2 insertions(+), 30 deletions(-) diff --git a/src/java/org/apache/poi/util/LittleEndian.java b/src/java/org/apache/poi/util/LittleEndian.java index 0f525c156d..4c4b51a011 100644 --- a/src/java/org/apache/poi/util/LittleEndian.java +++ b/src/java/org/apache/poi/util/LittleEndian.java @@ -475,23 +475,10 @@ public class LittleEndian return getLong(readFromStream(stream, LONG_SIZE)); } - - private final static byte[] _short_buffer = new byte[SHORT_SIZE]; - private final static byte[] _int_buffer = new byte[INT_SIZE]; - private final static byte[] _long_buffer = new byte[LONG_SIZE]; - - /** * Read the appropriate number of bytes from the stream and return them to * the caller.

* - * It should be noted that, in an attempt to improve system performance and - * to prevent a transient explosion of discarded byte arrays to be garbage - * collected, static byte arrays are employed for the standard cases of - * reading a short, an int, or a long.

- * - * THIS INTRODUCES A RISK FOR THREADED OPERATIONS!

- * * However, for the purposes of the POI project, this risk is deemed * negligible. It is, however, so noted. * @@ -510,23 +497,8 @@ public class LittleEndian public static byte[] readFromStream(final InputStream stream, final int size) throws IOException, BufferUnderrunException { - byte[] buffer = null; - - switch (size) { - - case SHORT_SIZE: - buffer = _short_buffer; - break; - case INT_SIZE: - buffer = _int_buffer; - break; - case LONG_SIZE: - buffer = _long_buffer; - break; - default: - buffer = new byte[size]; - break; - } + byte[] buffer = new byte[size]; + int count = stream.read(buffer); if (count == -1) { -- 2.39.5