src/java.net.http/share/classes/jdk/internal/net/http/HttpRequestImpl.java
branchhttp-client-branch
changeset 56751 aa677dd4c174
parent 56619 57f17e890a40
child 56766 713f08212a7e
--- a/src/java.net.http/share/classes/jdk/internal/net/http/HttpRequestImpl.java	Tue Jun 12 17:35:00 2018 +0100
+++ b/src/java.net.http/share/classes/jdk/internal/net/http/HttpRequestImpl.java	Wed Jun 13 10:05:18 2018 +0100
@@ -120,7 +120,9 @@
             checkTimeout(timeout);
             this.systemHeadersBuilder = new HttpHeadersBuilder();
         }
-        this.systemHeadersBuilder.setHeader("User-Agent", USER_AGENT);
+        if (!userHeaders.firstValue("User-Agent").isPresent()) {
+            this.systemHeadersBuilder.setHeader("User-Agent", USER_AGENT);
+        }
         this.uri = requestURI;
         if (isWebSocket) {
             // WebSocket determines and sets the proxy itself
@@ -170,7 +172,9 @@
         this.userHeaders = other.userHeaders;
         this.isWebSocket = other.isWebSocket;
         this.systemHeadersBuilder = new HttpHeadersBuilder();
-        this.systemHeadersBuilder.setHeader("User-Agent", USER_AGENT);
+        if (!userHeaders.firstValue("User-Agent").isPresent()) {
+            this.systemHeadersBuilder.setHeader("User-Agent", USER_AGENT);
+        }
         this.uri = uri;
         this.proxy = other.proxy;
         this.expectContinue = other.expectContinue;