On 12.07.2007 01:37, [EMAIL PROTECTED] wrote:
Author: felixk
Date: Wed Jul 11 22:37:32 2007
New Revision: 555496
URL: http://svn.apache.org/viewvc?view=rev&rev=555496
Log:
Make sure, they finally are closed
Hi Felix,
the streams are now closed twice since close() is also inside try block.
Also if outStream.close() fails with an exception instream will remain open.
Joerg
==============================================================================
---
cocoon/trunk/core/cocoon-configuration/cocoon-spring-configurator/src/main/java/org/apache/cocoon/spring/configurator/impl/DeploymentUtil.java
(original)
+++
cocoon/trunk/core/cocoon-configuration/cocoon-spring-configurator/src/main/java/org/apache/cocoon/spring/configurator/impl/DeploymentUtil.java
Wed Jul 11 22:37:32 2007
@@ -67,11 +67,23 @@
final File out = new File(fileName);
// create directory
out.getParentFile().mkdirs();
- final InputStream inStream = jarFile.getInputStream(entry);
- final OutputStream outStream = new FileOutputStream(out);
- IOUtils.copy(inStream, outStream);
- inStream.close();
- outStream.close();
+
+ InputStream inStream = null;
+ OutputStream outStream = null;
+ try {
+ inStream = jarFile.getInputStream(entry);
+ outStream = new FileOutputStream(out);
+ IOUtils.copy(inStream, outStream);
+ inStream.close();
+ outStream.close();
+ } finally {
+ if (outStream != null) {
+ outStream.close();
+ }
+ if (inStream != null) {
+ inStream.close();
+ }
+ }
}
}
}