You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2010/08/09 00:40:26 UTC
svn commit: r983491 -
/maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultFilesetArchetypeGenerator.java
Author: hboutemy
Date: Sun Aug 8 22:40:26 2010
New Revision: 983491
URL: http://svn.apache.org/viewvc?rev=983491&view=rev
Log:
[ARCHETYPE-322] fixed "Too many open files" error: forgot to close streams when copying
Modified:
maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultFilesetArchetypeGenerator.java
Modified: maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultFilesetArchetypeGenerator.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultFilesetArchetypeGenerator.java?rev=983491&r1=983490&r2=983491&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultFilesetArchetypeGenerator.java (original)
+++ maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultFilesetArchetypeGenerator.java Sun Aug 8 22:40:26 2010
@@ -49,6 +49,7 @@ import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
+import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.ArrayList;
@@ -264,11 +265,23 @@ public class DefaultFilesetArchetypeGene
ZipEntry input =
archetypeZipFile.getEntry( Constants.ARCHETYPE_RESOURCES + "/" + template );
- InputStream inputStream = archetypeZipFile.getInputStream( input );
+ InputStream inputStream = null;
+ OutputStream out = null;
+ try
+ {
+ inputStream = archetypeZipFile.getInputStream( input );
+
+ outFile.getParentFile().mkdirs();
- outFile.getParentFile().mkdirs();
+ out = new FileOutputStream( outFile );
- IOUtil.copy( inputStream, new FileOutputStream( outFile ) );
+ IOUtil.copy( inputStream, out );
+ }
+ finally
+ {
+ IOUtil.close( inputStream );
+ IOUtil.close( out );
+ }
}
}