aboutsummaryrefslogtreecommitdiff
path: root/src/net/http
diff options
context:
space:
mode:
authorEmmanuel T Odeke <emmanuel@orijtech.com>2026-02-18 17:03:37 -0500
committerGopher Robot <gobot@golang.org>2026-02-19 15:40:16 -0800
commit09c3cfbc208fbd3ee8a06885e7efa53cdd56be7a (patch)
tree998a773ef6bbc64302313c490fead8d88f191a85 /src/net/http
parent839cd82fa53ec481ffcd02e139b3d77c2724892e (diff)
downloadgo-09c3cfbc208fbd3ee8a06885e7efa53cdd56be7a.tar.xz
net/url: add (*URL).Clone
This change adds URL.Clone which creates a deep copy of the URL's fields including the .User and tests these. In a separate CL I shall send Values.Clone too. Updates #73450 Change-Id: Ifea4bfc4ddd0640247544ec111ec83bd9bbe9104 Reviewed-on: https://go-review.googlesource.com/c/go/+/746800 Reviewed-by: Nicholas Husin <husin@google.com> Auto-Submit: Emmanuel Odeke <emmanuel@orijtech.com> Reviewed-by: Damien Neil <dneil@google.com> Reviewed-by: Nicholas Husin <nsh@golang.org> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Damien Neil <dneil@google.com>
Diffstat (limited to 'src/net/http')
-rw-r--r--src/net/http/clone.go11
1 files changed, 1 insertions, 10 deletions
diff --git a/src/net/http/clone.go b/src/net/http/clone.go
index 0c2daf8552..7ea353a42f 100644
--- a/src/net/http/clone.go
+++ b/src/net/http/clone.go
@@ -39,16 +39,7 @@ func cloneURLValues(v url.Values) url.Values {
//
//go:linkname cloneURL
func cloneURL(u *url.URL) *url.URL {
- if u == nil {
- return nil
- }
- u2 := new(url.URL)
- *u2 = *u
- if u.User != nil {
- u2.User = new(url.Userinfo)
- *u2.User = *u.User
- }
- return u2
+ return u.Clone()
}
// cloneMultipartForm should be an internal detail,