mirror of
https://github.com/golang/go
synced 2024-11-22 04:24:39 -07:00
net/http: fix confusing shadowing in ProxyFromEnvironment
The old code worked, somewhat on accident, but was confusing, and had a useless assignment to the inner err. It worked because url.Parse parses just about anything, so the outer err was always nil, so it always fell through to the bottom return statement, even without the "err = nil" line. Instead, just have two return statements, and add a comment. R=golang-dev, r CC=golang-dev https://golang.org/cl/10448044
This commit is contained in:
parent
3e710c0ba5
commit
5b0bf9db8e
@ -109,9 +109,11 @@ func ProxyFromEnvironment(req *Request) (*url.URL, error) {
|
||||
}
|
||||
proxyURL, err := url.Parse(proxy)
|
||||
if err != nil || !strings.HasPrefix(proxyURL.Scheme, "http") {
|
||||
if u, err := url.Parse("http://" + proxy); err == nil {
|
||||
proxyURL = u
|
||||
err = nil
|
||||
// proxy was bogus. Try prepending "http://" to it and
|
||||
// see if that parses correctly. If not, we fall
|
||||
// through and complain about the original one.
|
||||
if proxyURL, err := url.Parse("http://" + proxy); err == nil {
|
||||
return proxyURL, nil
|
||||
}
|
||||
}
|
||||
if err != nil {
|
||||
|
Loading…
Reference in New Issue
Block a user