diff options
author | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-30 17:00:34 +0000 |
---|---|---|
committer | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-30 17:00:34 +0000 |
commit | 574b4c1c10281a749bb766b7b36f90b355df4341 (patch) | |
tree | 0768b92f77f32a9eee18589b26d6c67372372ee9 | |
parent | e9a995bf217f4e33fde42f14ae448b326024fc63 (diff) | |
download | gcc-574b4c1c10281a749bb766b7b36f90b355df4341.tar.gz |
2004-07-30 Michael Koch <konqueror@gmx.de>
* java/util/zip/GZIPInputStream.java
(GZIPInputStream): Increase buffer size to 4k.
* java/util/zip/GZIPOutputStream.java
(GZIPOutputStream): Likewise.
* java/util/zip/Inflater.java
(setInput): Merged formating with GNU classpath.
* java/util/zip/InflaterInputStream.java
(InflaterInputStream): Increase buffer size to 4k.
(fill): Throw exception if stream ends early.
(read): Merged endless-loop with GNU classpath.
(skip): Increase buffer size to 2k.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85340 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | libjava/ChangeLog | 14 | ||||
-rw-r--r-- | libjava/java/util/zip/GZIPInputStream.java | 2 | ||||
-rw-r--r-- | libjava/java/util/zip/GZIPOutputStream.java | 2 | ||||
-rw-r--r-- | libjava/java/util/zip/Inflater.java | 2 | ||||
-rw-r--r-- | libjava/java/util/zip/InflaterInputStream.java | 22 |
5 files changed, 30 insertions, 12 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index db17ad758e2..213dbcf3998 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,5 +1,19 @@ 2004-07-30 Michael Koch <konqueror@gmx.de> + * java/util/zip/GZIPInputStream.java + (GZIPInputStream): Increase buffer size to 4k. + * java/util/zip/GZIPOutputStream.java + (GZIPOutputStream): Likewise. + * java/util/zip/Inflater.java + (setInput): Merged formating with GNU classpath. + * java/util/zip/InflaterInputStream.java + (InflaterInputStream): Increase buffer size to 4k. + (fill): Throw exception if stream ends early. + (read): Merged endless-loop with GNU classpath. + (skip): Increase buffer size to 2k. + +2004-07-30 Michael Koch <konqueror@gmx.de> + * gnu/java/awt/EmbeddedWindow.java (addNotify): Use AccessController to allow execution of privileged code. diff --git a/libjava/java/util/zip/GZIPInputStream.java b/libjava/java/util/zip/GZIPInputStream.java index ec4613f153c..9eef73eb945 100644 --- a/libjava/java/util/zip/GZIPInputStream.java +++ b/libjava/java/util/zip/GZIPInputStream.java @@ -104,7 +104,7 @@ public class GZIPInputStream public GZIPInputStream(InputStream in) throws IOException { - this(in, 512); + this(in, 4096); } /** diff --git a/libjava/java/util/zip/GZIPOutputStream.java b/libjava/java/util/zip/GZIPOutputStream.java index 70339a022d0..4ec6cb1a6b8 100644 --- a/libjava/java/util/zip/GZIPOutputStream.java +++ b/libjava/java/util/zip/GZIPOutputStream.java @@ -69,7 +69,7 @@ public class GZIPOutputStream extends DeflaterOutputStream */ public GZIPOutputStream(OutputStream out) throws IOException { - this(out, 512); + this(out, 4096); } /** diff --git a/libjava/java/util/zip/Inflater.java b/libjava/java/util/zip/Inflater.java index 28e89ea4449..5b6921a7029 100644 --- a/libjava/java/util/zip/Inflater.java +++ b/libjava/java/util/zip/Inflater.java @@ -251,7 +251,7 @@ public class Inflater * @param buffer the input. * @exception IllegalStateException if no input is needed. */ - public void setInput (byte[] buf) + public void setInput (byte[] buf) { setInput (buf, 0, buf.length); } diff --git a/libjava/java/util/zip/InflaterInputStream.java b/libjava/java/util/zip/InflaterInputStream.java index 60442e474af..27c29ff41df 100644 --- a/libjava/java/util/zip/InflaterInputStream.java +++ b/libjava/java/util/zip/InflaterInputStream.java @@ -79,7 +79,7 @@ public class InflaterInputStream extends FilterInputStream */ public InflaterInputStream(InputStream in) { - this(in, new Inflater(), 512); + this(in, new Inflater(), 4096); } /** @@ -91,7 +91,7 @@ public class InflaterInputStream extends FilterInputStream */ public InflaterInputStream(InputStream in, Inflater inf) { - this(in, inf, 512); + this(in, inf, 4096); } /** @@ -149,8 +149,10 @@ public class InflaterInputStream extends FilterInputStream len = in.read(buf, 0, buf.length); - if (len != -1) - inf.setInput(buf, 0, len); + if (len < 0) + throw new ZipException("Deflated stream ends early."); + + inf.setInput(buf, 0, len); } /** @@ -170,7 +172,7 @@ public class InflaterInputStream extends FilterInputStream return -1; int count = 0; - while (count == 0) + for (;;) { if (inf.needsInput()) fill(); @@ -193,8 +195,10 @@ public class InflaterInputStream extends FilterInputStream { throw new ZipException(dfe.getMessage()); } + + if (count > 0) + return count; } - return count; } /** @@ -212,18 +216,18 @@ public class InflaterInputStream extends FilterInputStream if (n == 0) return 0; - int buflen = (int) Math.min(n, 1024); + int buflen = (int) Math.min(n, 2048); byte[] tmpbuf = new byte[buflen]; long skipped = 0L; while (n > 0L) { int numread = read(tmpbuf, 0, buflen); - if (numread == -1) + if (numread <= 0) break; n -= numread; skipped += numread; - buflen = (int) Math.min(n, 1024); + buflen = (int) Math.min(n, 2048); } return skipped; |