This is an automated email from the ASF dual-hosted git repository.

dkulp pushed a commit to branch 3.6.x-fixes
in repository https://gitbox.apache.org/repos/asf/cxf.git

commit 711899d6d0698060fef79262acbc72f9ea0785b5
Author: Daniel Kulp <d...@kulp.com>
AuthorDate: Tue Sep 5 03:30:03 2023 -0400

    Make sure TransportURIResolver closes the conduit it uses, make sure 
HttpClient is unset from message on exchange close/complete.
    
    (cherry picked from commit d1396f4ce4ffb890b2434930402a8890094d7079)
---
 .../main/java/org/apache/cxf/transport/TransportURIResolver.java    | 1 +
 .../java/org/apache/cxf/transport/http/HttpClientHTTPConduit.java   | 6 ++++++
 2 files changed, 7 insertions(+)

diff --git 
a/core/src/main/java/org/apache/cxf/transport/TransportURIResolver.java 
b/core/src/main/java/org/apache/cxf/transport/TransportURIResolver.java
index c3da4e54a7..4c1446ef04 100644
--- a/core/src/main/java/org/apache/cxf/transport/TransportURIResolver.java
+++ b/core/src/main/java/org/apache/cxf/transport/TransportURIResolver.java
@@ -133,6 +133,7 @@ public class TransportURIResolver extends 
ExtendedURIResolver {
                     });
                     c.prepare(message);
                     c.close(message);
+                    c.close();
                     InputStream ins = exch.get(InputStream.class);
                     resourceOpened.add(ins);
                     InputSource src = new InputSource(ins);
diff --git 
a/rt/transports/http/src/main/java/org/apache/cxf/transport/http/HttpClientHTTPConduit.java
 
b/rt/transports/http/src/main/java/org/apache/cxf/transport/http/HttpClientHTTPConduit.java
index b40b6904dc..9012f3a047 100644
--- 
a/rt/transports/http/src/main/java/org/apache/cxf/transport/http/HttpClientHTTPConduit.java
+++ 
b/rt/transports/http/src/main/java/org/apache/cxf/transport/http/HttpClientHTTPConduit.java
@@ -107,6 +107,12 @@ public class HttpClientHTTPConduit extends 
URLConnectionHTTPConduit {
                 || lastURL.getPort() != url.getPort();
     }
     
+    @Override
+    public void close(Message msg) throws IOException {
+        super.close(msg);
+        msg.remove(HttpClient.class);
+    }
+    
     /**
      * Close the conduit
      */

Reply via email to