1
0

[LOGGING-163] BufferedReader is not closed properly.

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/logging/trunk@1765341 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Gary D. Gregory
2016-10-17 16:56:41 +00:00
parent 249e8f4b88
commit 47ae3e15c3
3 changed files with 18 additions and 5 deletions

View File

@@ -44,6 +44,9 @@ The <action> type attribute can be add,update,fix,remove.
</properties> </properties>
<body> <body>
<release version="1.2.1" date="TBD" description="This is a maintenance release containing bug fixes. Java 1.2 or later is required."> <release version="1.2.1" date="TBD" description="This is a maintenance release containing bug fixes. Java 1.2 or later is required.">
<action issue="LOGGING-163" dev="ggregory" type="fix" due-to="Kaloyan Spiridonov">
BufferedReader is not closed properly.
</action>
</release> </release>
<release version="1.2" date="2014-07-11" description="This is a maintenance release containing bug fixes. Java 1.2 or later is required."> <release version="1.2" date="2014-07-11" description="This is a maintenance release containing bug fixes. Java 1.2 or later is required.">
<action issue="LOGGING-37" dev="tn" type="fix" due-to="Matthias Ernst,Archie Cobbs"> <action issue="LOGGING-37" dev="tn" type="fix" due-to="Matthias Ernst,Archie Cobbs">

View File

@@ -539,8 +539,12 @@ public abstract class LogFactory {
rd = new BufferedReader(new InputStreamReader(is)); rd = new BufferedReader(new InputStreamReader(is));
} }
String factoryClassName = rd.readLine(); String factoryClassName;
try {
factoryClassName = rd.readLine();
} finally {
rd.close(); rd.close();
}
if (factoryClassName != null && ! "".equals(factoryClassName)) { if (factoryClassName != null && ! "".equals(factoryClassName)) {
if (isDiagnosticsEnabled()) { if (isDiagnosticsEnabled()) {

View File

@@ -17,6 +17,7 @@
package org.apache.commons.logging.impl; package org.apache.commons.logging.impl;
import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.io.Serializable; import java.io.Serializable;
import java.lang.reflect.InvocationTargetException; import java.lang.reflect.InvocationTargetException;
@@ -158,12 +159,17 @@ public class SimpleLog implements Log, Serializable {
static { static {
// Add props from the resource simplelog.properties // Add props from the resource simplelog.properties
InputStream in = getResourceAsStream("simplelog.properties"); InputStream in = getResourceAsStream("simplelog.properties");
if(null != in) { if (null != in) {
try { try {
simpleLogProps.load(in); simpleLogProps.load(in);
in.close(); } catch (java.io.IOException e) {
} catch(java.io.IOException e) {
// ignored // ignored
} finally {
try {
in.close();
} catch (IOException e) {
// ignored
}
} }
} }