ZipEntry.java (setCompressedSize): Allow any argument.

* 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.

From-SVN: r92969
This commit is contained in:
Tom Tromey 2005-01-05 20:41:27 +00:00 committed by Tom Tromey
parent d2ad2c8a9c
commit ea97f102ef
3 changed files with 14 additions and 10 deletions

View File

@ -1,3 +1,12 @@
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:

View 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());
}
/**

View 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;
}
/**