Skip to content

net/http: transport.go: proxy errors ignored #8755

@gopherbot

Description

@gopherbot

by jtuley@pivotal.io:

In Go 1.3 (specifically revision 22fe13ae3884ef4349cfb78ad5804ebc0c8759d0 on
2014-01-30), the connectMethodForRequest function lost its return when t.Proxy returns
an error.

Before (a177faebc7fc36ee005361a6b27932a774bf70a5):

func (t *Transport) connectMethodForRequest(treq *transportRequest) (*connectMethod,
error) {
    cm := &connectMethod{
        targetScheme: treq.URL.Scheme,
        targetAddr:   canonicalAddr(treq.URL),
    }
    if t.Proxy != nil {
        var err error
        cm.proxyURL, err = t.Proxy(treq.Request)
        if err != nil {
            return nil, err
        }
    }
    return cm, nil
}


After (22fe13ae3884ef4349cfb78ad5804ebc0c8759d0):

func (t *Transport) connectMethodForRequest(treq *transportRequest) (cm connectMethod,
err error) {
    cm.targetScheme = treq.URL.Scheme
    cm.targetAddr = canonicalAddr(treq.URL)
    if t.Proxy != nil {
        cm.proxyURL, err = t.Proxy(treq.Request)
    }
    return cm, nil
}

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions