JarFile.java (JarFile(String, boolean)): Read manifest when verify is true.

* java/util/jar/JarFile.java (JarFile(String, boolean)): Read manifest
       when verify is true.
       (JarFile(File, boolean)): Likewise.
       (manifestRead): Set manifestRead field correctly.

From-SVN: r62545
This commit is contained in:
Mark Wielaard 2003-02-07 21:33:05 +00:00 committed by Mark Wielaard
parent 5ccbcd8cf9
commit b0b74f371e
2 changed files with 28 additions and 3 deletions

View File

@ -1,3 +1,10 @@
2003-02-07 Mark Wielaard <mark@klomp.org>
* java/util/jar/JarFile.java (JarFile(String, boolean)): Read manifest
when verify is true.
(JarFile(File, boolean)): Likewise.
(manifestRead): Set manifestRead field correctly.
2003-02-07 Stephen Crawley <crawley@dstc.edu.au>
* java/math/BigDecimal(valueOf): fix DiagBigDecimal val008, val013

View File

@ -1,5 +1,5 @@
/* JarFile.java - Representation of a jar file
Copyright (C) 2000 Free Software Foundation, Inc.
Copyright (C) 2000, 2003 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@ -71,10 +71,10 @@ public class JarFile extends ZipFile
*/
private Manifest manifest;
/** Wether to verify the manifest and all entries. */
/** Whether to verify the manifest and all entries. */
private boolean verify;
/** Wether the has already been loaded. */
/** Whether the has already been loaded. */
private boolean manifestRead = false;
// Constructors
@ -109,6 +109,11 @@ public class JarFile extends ZipFile
FileNotFoundException, IOException
{
super(fileName);
if (verify)
{
manifest = readManifest();
verify();
}
}
/**
@ -141,6 +146,11 @@ public class JarFile extends ZipFile
IOException
{
super(file);
if (verify)
{
manifest = readManifest();
verify();
}
}
/**
@ -165,6 +175,11 @@ public class JarFile extends ZipFile
FileNotFoundException, IOException, IllegalArgumentException
{
super(file, mode);
if (verify)
{
manifest = readManifest();
verify();
}
}
// Methods
@ -196,15 +211,18 @@ public class JarFile extends ZipFile
if (manEntry != null)
{
InputStream in = super.getInputStream(manEntry);
manifestRead = true;
return new Manifest(in);
}
else
{
manifestRead = true;
return null;
}
}
catch (IOException ioe)
{
manifestRead = true;
return null;
}
}