X-Git-Url: https://code.wpia.club/?p=gigi.git;a=blobdiff_plain;f=lib%2Fjetty%2Forg%2Feclipse%2Fjetty%2Futil%2Fresource%2FJarFileResource.java;h=ccb15ae070825200202765d3233598122ee5a5b4;hp=434aa88756502419d59d95ea15c68b75b8c14199;hb=ba4f228fa9f72d50991a2218cfd83987ef5d385e;hpb=875b5e9651498a0cd8e0001c0742ba843e47cad0 diff --git a/lib/jetty/org/eclipse/jetty/util/resource/JarFileResource.java b/lib/jetty/org/eclipse/jetty/util/resource/JarFileResource.java index 434aa887..ccb15ae0 100644 --- a/lib/jetty/org/eclipse/jetty/util/resource/JarFileResource.java +++ b/lib/jetty/org/eclipse/jetty/util/resource/JarFileResource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2016 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -73,7 +73,8 @@ class JarFileResource extends JarResource { try { - LOG.debug("Closing JarFile "+_jarFile.getName()); + if (LOG.isDebugEnabled()) + LOG.debug("Closing JarFile "+_jarFile.getName()); _jarFile.close(); } catch ( IOException ioe ) @@ -135,6 +136,7 @@ class JarFileResource extends JarResource * Returns true if the represented resource exists. */ @Override + public boolean exists() { if (_exists) @@ -160,10 +162,11 @@ class JarFileResource extends JarResource else { // Can we find a file for it? - JarFile jarFile=null; + boolean close_jar_file= false; + JarFile jar_file=null; if (check) // Yes - jarFile=_jarFile; + jar_file=_jarFile; else { // No - so lets look if the root entry exists. @@ -171,7 +174,8 @@ class JarFileResource extends JarResource { JarURLConnection c=(JarURLConnection)((new URL(_jarUrl)).openConnection()); c.setUseCaches(getUseCaches()); - jarFile=c.getJarFile(); + jar_file=c.getJarFile(); + close_jar_file = !getUseCaches(); } catch(Exception e) { @@ -180,10 +184,10 @@ class JarFileResource extends JarResource } // Do we need to look more closely? - if (jarFile!=null && _entry==null && !_directory) + if (jar_file!=null && _entry==null && !_directory) { // OK - we have a JarFile, lets look at the entries for our path - Enumeration e=jarFile.entries(); + Enumeration e=jar_file.entries(); while(e.hasMoreElements()) { JarEntry entry = e.nextElement(); @@ -212,6 +216,18 @@ class JarFileResource extends JarResource } } } + + if(close_jar_file && jar_file!=null) + { + try + { + jar_file.close(); + } + catch (IOException ioe) + { + LOG.ignore(ioe); + } + } } _exists= ( _directory || _entry!=null);