OSDN Git Service

* java/util/zip/ZipEntry.java (setCompressedSize): Allow any
authortromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 5 Jan 2005 20:41:27 +0000 (20:41 +0000)
committertromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 5 Jan 2005 20:41:27 +0000 (20:41 +0000)
argument.
(compressedSize): Now 'long'.  Default to -1.
(getCompressedSize): Rewrote.
* java/util/zip/DeflaterOutputStream.java (deflate): Don't
deflate at all if we need input.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@92969 138bc75d-0d04-0410-961f-82ee72b054a4

libjava/ChangeLog
libjava/java/util/zip/DeflaterOutputStream.java
libjava/java/util/zip/ZipEntry.java

index b4f7e8e..d3d4191 100644 (file)
@@ -1,5 +1,14 @@
 2005-01-05  Tom Tromey  <tromey@redhat.com>
 
+       * java/util/zip/ZipEntry.java (setCompressedSize): Allow any
+       argument.
+       (compressedSize): Now 'long'.  Default to -1.
+       (getCompressedSize): Rewrote.
+       * java/util/zip/DeflaterOutputStream.java (deflate): Don't
+       deflate at all if we need input.
+
+2005-01-05  Tom Tromey  <tromey@redhat.com>
+
        PR libgcj/15719:
        * interpret.cc (run) <insn_dcmpl, insn_dcmpg>: Set tmpval
        correctly.
index 4d84f2a..d8a330d 100644 (file)
@@ -79,13 +79,12 @@ public class DeflaterOutputStream extends FilterOutputStream
    */
   protected void deflate() throws IOException
   {
-    do
+    while (! def.needsInput())
       {
        int len = def.deflate(buf, 0, buf.length);
        if (len > 0)
          out.write(buf, 0, len);
        }
-    while (! def.needsInput());
   }
 
   /** 
index 201a671..6034327 100644 (file)
@@ -1,5 +1,5 @@
 /* ZipEntry.java --
-   Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
+   Copyright (C) 2001, 2002, 2004, 2005 Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -60,7 +60,7 @@ public class ZipEntry implements ZipConstants, Cloneable
 
   private String name;
   private int size;
-  private int compressedSize;
+  private long compressedSize = -1;
   private int crc;
   private int dostime;
   private short known = 0;
@@ -242,14 +242,10 @@ public class ZipEntry implements ZipConstants, Cloneable
 
   /**
    * Sets the size of the compressed data.
-   * @exception IllegalArgumentException if size is not in 0..0xffffffffL
    */
   public void setCompressedSize(long csize)
   {
-    if ((csize & 0xffffffff00000000L) != 0)
-       throw new IllegalArgumentException();
-    this.compressedSize = (int) csize;
-    this.known |= KNOWN_CSIZE;
+    this.compressedSize = csize;
   }
 
   /**
@@ -258,7 +254,7 @@ public class ZipEntry implements ZipConstants, Cloneable
    */
   public long getCompressedSize()
   {
-    return (known & KNOWN_CSIZE) != 0 ? compressedSize & 0xffffffffL : -1L;
+    return compressedSize;
   }
 
   /**