ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From maart...@apache.org
Subject svn commit: r700932 - in /ant/ivy/core/trunk: CHANGES.txt src/java/org/apache/ivy/util/url/HttpClientHandler.java
Date Wed, 01 Oct 2008 21:21:12 GMT
Author: maartenc
Date: Wed Oct  1 14:21:11 2008
New Revision: 700932

URL: http://svn.apache.org/viewvc?rev=700932&view=rev
Log:
FIX: HttpClientHandler hanging in certain cases (IVY-930) (thanks to Scott Hebert)

Modified:
    ant/ivy/core/trunk/CHANGES.txt
    ant/ivy/core/trunk/src/java/org/apache/ivy/util/url/HttpClientHandler.java

Modified: ant/ivy/core/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/CHANGES.txt?rev=700932&r1=700931&r2=700932&view=diff
==============================================================================
--- ant/ivy/core/trunk/CHANGES.txt (original)
+++ ant/ivy/core/trunk/CHANGES.txt Wed Oct  1 14:21:11 2008
@@ -34,6 +34,7 @@
 	Tobias Himstedt
 	Ben Hale
 	Peter Hayes
+	Scott Hebert
 	Matt Inger
 	Anders Janmyr
 	Christer Jonsson
@@ -96,6 +97,7 @@
 - FIX: StackOverflow when using ivy:settings with "ivy.instance" as id (IVY-924)
 - FIX: Maven Pom reader doesn't handle optional dependencies correctly in some instances
(IVY-926) (thanks to Phil Messenger)
 - FIX: ivy:settings doesn't work if id is a property (IVY-925)
+- FIX: HttpClientHandler hanging in certain cases (IVY-930) (thanks to Scott Hebert)
 
    2.0.0-rc1
 =====================================

Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/util/url/HttpClientHandler.java
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/util/url/HttpClientHandler.java?rev=700932&r1=700931&r2=700932&view=diff
==============================================================================
--- ant/ivy/core/trunk/src/java/org/apache/ivy/util/url/HttpClientHandler.java (original)
+++ ant/ivy/core/trunk/src/java/org/apache/ivy/util/url/HttpClientHandler.java Wed Oct  1
14:21:11 2008
@@ -94,6 +94,7 @@
     public InputStream openStream(URL url) throws IOException {
         GetMethod get = doGet(url, 0);
         if (!checkStatusCode(url, get)) {
+            get.releaseConnection();
             throw new IOException(
                     "The HTTP response code for " + url + " did not indicate a success."
                             + " See log for more detail.");
@@ -103,15 +104,18 @@
 
     public void download(URL src, File dest, CopyProgressListener l) throws IOException {
         GetMethod get = doGet(src, 0);
-        // We can only figure the content we got is want we want if the status is success.
-        if (!checkStatusCode(src, get)) {
-            throw new IOException(
-                    "The HTTP response code for " + src + " did not indicate a success."
-                            + " See log for more detail.");
+        try {
+            // We can only figure the content we got is want we want if the status is success.
+            if (!checkStatusCode(src, get)) {
+                throw new IOException(
+                        "The HTTP response code for " + src + " did not indicate a success."
+                                + " See log for more detail.");
+            }
+            FileUtil.copy(get.getResponseBodyAsStream(), dest, l);
+            dest.setLastModified(getLastModified(get));
+        } finally {
+            get.releaseConnection();
         }
-        FileUtil.copy(get.getResponseBodyAsStream(), dest, l);
-        dest.setLastModified(getLastModified(get));
-        get.releaseConnection();
     }
 
     public void upload(File src, URL dest, CopyProgressListener l) throws IOException {
@@ -133,6 +137,7 @@
                     /* ignored */
                 }
             }
+            put.releaseConnection();
         }
     }
 



Mime
View raw message