Author: hibou
Date: Tue Aug 28 20:51:02 2012
New Revision: 1378329
URL: http://svn.apache.org/viewvc?rev=1378329&view=rev
Log:
fix test on windows: fix file descriptor leak while unziping
Modified:
ant/ivy/core/trunk/src/java/org/apache/ivy/core/cache/DefaultRepositoryCacheManager.java
Modified:
ant/ivy/core/trunk/src/java/org/apache/ivy/core/cache/DefaultRepositoryCacheManager.java
URL:
http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/core/cache/DefaultRepositoryCacheManager.java?rev=1378329&r1=1378328&r2=1378329&view=diff
==============================================================================
---
ant/ivy/core/trunk/src/java/org/apache/ivy/core/cache/DefaultRepositoryCacheManager.java
(original)
+++
ant/ivy/core/trunk/src/java/org/apache/ivy/core/cache/DefaultRepositoryCacheManager.java
Tue Aug 28 20:51:02 2012
@@ -936,8 +936,9 @@ public class DefaultRepositoryCacheManag
} else {
if (compression.equals("zip") || compression.equals("jar") ||
compression.equals("war")) {
Message.info("\tUncompressing " + artifact.getId());
+ ZipFile zipFile = null;
try {
- ZipFile zipFile = new ZipFile(adr.getLocalFile());
+ zipFile = new ZipFile(adr.getLocalFile());
Enumeration entries = zipFile.entries();
while (entries.hasMoreElements()) {
ZipEntry entry = (ZipEntry) entries.nextElement();
@@ -983,6 +984,14 @@ public class DefaultRepositoryCacheManag
adr.setDownloadStatus(DownloadStatus.FAILED);
adr.setDownloadDetails("The compressed artifact " +
artifact.getId()
+ " could not be uncompressed (" + e.getMessage()
+ ")");
+ } finally {
+ if (zipFile != null) {
+ try {
+ zipFile.close();
+ } catch (IOException e) {
+ // ignore
+ }
+ }
}
} else {
adr.setDownloadStatus(DownloadStatus.FAILED);