<changes>
<release version="3.8-beta5" date="2011-??-??">
+ <action dev="poi-developers" type="fix">51949 - Avoid NPE on double close of ZipFileZipEntrySource</action>
<action dev="poi-developers" type="fix">51950 - XWPF fix for footnotes not always being present in a document</action>
<action dev="poi-developers" type="fix">51963 - Correct AreaReference handling of references containing a sheet name which includes a comma</action>
<action dev="poi-developers" type="fix">51955 - XSSFReader supplied StylesTables need to have the theme data available</action>
* normal ZipFile implementation is.
*/
public class ZipFileZipEntrySource implements ZipEntrySource {
- private ZipFile zipArchive;
- public ZipFileZipEntrySource(ZipFile zipFile) {
- this.zipArchive = zipFile;
- }
-
- public void close() throws IOException {
- zipArchive.close();
- zipArchive = null;
- }
-
- public Enumeration<? extends ZipEntry> getEntries() {
- return zipArchive.entries();
- }
-
- public InputStream getInputStream(ZipEntry entry) throws IOException {
- return zipArchive.getInputStream(entry);
- }
+ private ZipFile zipArchive;
+ public ZipFileZipEntrySource(ZipFile zipFile) {
+ this.zipArchive = zipFile;
+ }
+
+ public void close() throws IOException {
+ if(zipArchive != null) {
+ zipArchive.close();
+ }
+ zipArchive = null;
+ }
+
+ public Enumeration<? extends ZipEntry> getEntries() {
+ return zipArchive.entries();
+ }
+
+ public InputStream getInputStream(ZipEntry entry) throws IOException {
+ return zipArchive.getInputStream(entry);
+ }
}