You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by be...@apache.org on 2008/12/26 21:35:51 UTC
svn commit: r729532 - in /maven/plugins/trunk/maven-pmd-plugin/src:
main/java/org/apache/maven/plugin/pmd/PmdReport.java
test/java/org/apache/maven/plugin/pmd/PmdReportTest.java
Author: bentmann
Date: Fri Dec 26 12:35:51 2008
New Revision: 729532
URL: http://svn.apache.org/viewvc?rev=729532&view=rev
Log:
o Fixed file leaks
Modified:
maven/plugins/trunk/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReport.java
maven/plugins/trunk/maven-pmd-plugin/src/test/java/org/apache/maven/plugin/pmd/PmdReportTest.java
Modified: maven/plugins/trunk/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReport.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReport.java?rev=729532&r1=729531&r2=729532&view=diff
==============================================================================
--- maven/plugins/trunk/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReport.java (original)
+++ maven/plugins/trunk/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReport.java Fri Dec 26 12:35:51 2008
@@ -175,8 +175,7 @@
{
String set = rulesets[idx];
getLog().debug( "Preparing ruleset: " + set );
- File ruleset = null;
- ruleset = locator.getResourceAsFile( set, getLocationTemp( set ) );
+ File ruleset = locator.getResourceAsFile( set, getLocationTemp( set ) );
if ( null == ruleset )
{
@@ -184,7 +183,14 @@
}
InputStream rulesInput = new FileInputStream( ruleset );
- sets[idx] = ruleSetFactory.createRuleSet( rulesInput );
+ try
+ {
+ sets[idx] = ruleSetFactory.createRuleSet( rulesInput );
+ }
+ finally
+ {
+ rulesInput.close();
+ }
}
}
catch ( IOException e )
@@ -222,9 +228,9 @@
Map.Entry entry = (Map.Entry) i.next();
File file = (File) entry.getKey();
PmdFileInfo fileInfo = (PmdFileInfo) entry.getValue();
-
+
// TODO: lazily call beginFile in case there are no rules
-
+
reportSink.beginFile( file , fileInfo );
ruleContext.setSourceCodeFilename( file.getAbsolutePath() );
for ( int idx = 0; idx < rulesets.length; idx++ )
@@ -242,7 +248,14 @@
{
reader = ReaderFactory.newPlatformReader( file );
}
- pmd.processFile( reader, sets[idx], ruleContext );
+ try
+ {
+ pmd.processFile( reader, sets[idx], ruleContext );
+ }
+ finally
+ {
+ reader.close();
+ }
}
catch ( UnsupportedEncodingException e1 )
{
Modified: maven/plugins/trunk/maven-pmd-plugin/src/test/java/org/apache/maven/plugin/pmd/PmdReportTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-pmd-plugin/src/test/java/org/apache/maven/plugin/pmd/PmdReportTest.java?rev=729532&r1=729531&r2=729532&view=diff
==============================================================================
--- maven/plugins/trunk/maven-pmd-plugin/src/test/java/org/apache/maven/plugin/pmd/PmdReportTest.java (original)
+++ maven/plugins/trunk/maven-pmd-plugin/src/test/java/org/apache/maven/plugin/pmd/PmdReportTest.java Fri Dec 26 12:35:51 2008
@@ -236,13 +236,19 @@
throws IOException
{
String str = "", strTmp = "";
- BufferedReader in = new BufferedReader( new FileReader( file ) );
- while ( ( strTmp = in.readLine() ) != null )
+ BufferedReader in = new BufferedReader( new FileReader( file ) );
+ try
+ {
+ while ( ( strTmp = in.readLine() ) != null )
+ {
+ str += " " + strTmp;
+ }
+ }
+ finally
{
- str = str + " " + strTmp;
+ in.close();
}
- in.close();
return str;
}