aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2004-10-25 17:06:12 +0000
committerTom Tromey <tromey@redhat.com>2004-10-25 17:06:12 +0000
commit867c6f7c61398d91408881272bf22a3aabf407f3 (patch)
treea23f27260063a8c99163586272e5dde9e5c74b12
parent3ec074aa60eb5af2b930a6e69bb8bb2307babebf (diff)
* java/util/zip/InflaterInputStream.java (fill): Don't throw an
exception if we hit EOF of `in'. (read): Handle case where inflating returns -1. git-svn-id: https://gcc.gnu.org/svn/gcc/branches/gcj-abi-2-dev-branch@89540 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--libjava/ChangeLog4
-rw-r--r--libjava/java/util/zip/InflaterInputStream.java12
2 files changed, 8 insertions, 8 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index fe091b9601d..41aa4e41618 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,5 +1,9 @@
2004-10-25 Tom Tromey <tromey@redhat.com>
+ * java/util/zip/InflaterInputStream.java (fill): Don't throw an
+ exception if we hit EOF of `in'.
+ (read): Handle case where inflating returns -1.
+
* gnu/java/text/WordBreakIterator.java (WordBreakIterator): Don't
initialize `iter'.
* gnu/java/text/SentenceBreakIterator.java
diff --git a/libjava/java/util/zip/InflaterInputStream.java b/libjava/java/util/zip/InflaterInputStream.java
index 3676a2cdb5d..bfe93bd152c 100644
--- a/libjava/java/util/zip/InflaterInputStream.java
+++ b/libjava/java/util/zip/InflaterInputStream.java
@@ -152,10 +152,8 @@ public class InflaterInputStream extends FilterInputStream
len = in.read(buf, 0, buf.length);
- if (len < 0)
- throw new ZipException("Deflated stream ends early.");
-
- inf.setInput(buf, 0, len);
+ if (len >= 0)
+ inf.setInput(buf, 0, len);
}
/**
@@ -188,7 +186,7 @@ public class InflaterInputStream extends FilterInputStream
return -1;
int count = 0;
- for (;;)
+ while (count == 0)
{
if (inf.needsInput())
fill();
@@ -211,10 +209,8 @@ public class InflaterInputStream extends FilterInputStream
{
throw new ZipException(dfe.getMessage());
}
-
- if (count > 0)
- return count;
}
+ return count;
}
/**