Author: violetagg Date: Wed Sep 3 18:22:14 2014 New Revision: 1622312 URL: http://svn.apache.org/r1622312 Log: Fix some potential resource leaks when reading files and other resources. Reported by Coverity Scan.
Modified: tomcat/trunk/java/org/apache/catalina/util/CharsetMapper.java tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/FragmentJarScannerCallback.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/catalina/util/CharsetMapper.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/util/CharsetMapper.java?rev=1622312&r1=1622311&r2=1622312&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/util/CharsetMapper.java (original) +++ tomcat/trunk/java/org/apache/catalina/util/CharsetMapper.java Wed Sep 3 18:22:14 2014 @@ -69,11 +69,8 @@ public class CharsetMapper { * resource could not be loaded for any reason. */ public CharsetMapper(String name) { - try { - InputStream stream = - this.getClass().getResourceAsStream(name); + try (InputStream stream = this.getClass().getResourceAsStream(name)) { map.load(stream); - stream.close(); } catch (Throwable t) { ExceptionUtils.handleThrowable(t); throw new IllegalArgumentException(t.toString()); Modified: tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/FragmentJarScannerCallback.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/FragmentJarScannerCallback.java?rev=1622312&r1=1622311&r2=1622312&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/FragmentJarScannerCallback.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/FragmentJarScannerCallback.java Wed Sep 3 18:22:14 2014 @@ -111,15 +111,13 @@ public class FragmentJarScannerCallback @Override public void scan(File file, String webappPath, boolean isWebapp) throws IOException { - InputStream stream = null; WebXml fragment = new WebXml(); fragment.setWebappJar(isWebapp); fragment.setDelegate(delegate); - try { - File fragmentFile = new File(file, FRAGMENT_LOCATION); + File fragmentFile = new File(file, FRAGMENT_LOCATION); + try (InputStream stream = new FileInputStream(fragmentFile)) { if (fragmentFile.isFile()) { - stream = new FileInputStream(fragmentFile); InputSource source = new InputSource(fragmentFile.toURI().toURL().toString()); source.setByteStream(stream); Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1622312&r1=1622311&r2=1622312&view=diff ============================================================================== --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Wed Sep 3 18:22:14 2014 @@ -99,8 +99,8 @@ extension dependencies reported by Coverity Scan. (violetagg) </fix> <fix> - Fix some potential resource leaks when reading property files. Reported - by Coverity Scan. (violetagg) + Fix some potential resource leaks when reading properties, files and + other resources. Reported by Coverity Scan. (violetagg) </fix> </changelog> </subsection> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org