]> Cypherpunks repositories - gostls13.git/commitdiff
net: simplify dial
authorMikio Hara <mikioh.mikioh@gmail.com>
Wed, 14 Aug 2013 20:53:53 +0000 (05:53 +0900)
committerMikio Hara <mikioh.mikioh@gmail.com>
Wed, 14 Aug 2013 20:53:53 +0000 (05:53 +0900)
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/12884044

src/pkg/net/dial.go

index b6ed830511f92cea077726591aa89455374e52b5..8df4f77849902a67d9b81d7753855cbd1492f66f 100644 (file)
@@ -146,30 +146,26 @@ func (d *Dialer) Dial(network, address string) (Conn, error) {
        return resolveAndDial(network, address, d.LocalAddr, d.deadline())
 }
 
-func dial(net, addr string, la, ra Addr, deadline time.Time) (c Conn, err error) {
+func dial(net, addr string, la, ra Addr, deadline time.Time) (Conn, error) {
        if la != nil && la.Network() != ra.Network() {
                return nil, &OpError{Op: "dial", Net: net, Addr: ra, Err: errors.New("mismatched local address type " + la.Network())}
        }
        switch ra := ra.(type) {
        case *TCPAddr:
                la, _ := la.(*TCPAddr)
-               c, err = dialTCP(net, la, ra, deadline)
+               return dialTCP(net, la, ra, deadline)
        case *UDPAddr:
                la, _ := la.(*UDPAddr)
-               c, err = dialUDP(net, la, ra, deadline)
+               return dialUDP(net, la, ra, deadline)
        case *IPAddr:
                la, _ := la.(*IPAddr)
-               c, err = dialIP(net, la, ra, deadline)
+               return dialIP(net, la, ra, deadline)
        case *UnixAddr:
                la, _ := la.(*UnixAddr)
-               c, err = dialUnix(net, la, ra, deadline)
+               return dialUnix(net, la, ra, deadline)
        default:
-               err = &OpError{Op: "dial", Net: net, Addr: ra, Err: &AddrError{Err: "unexpected address type", Addr: addr}}
+               return nil, &OpError{Op: "dial", Net: net, Addr: ra, Err: &AddrError{Err: "unexpected address type", Addr: addr}}
        }
-       if err != nil {
-               return nil, err
-       }
-       return
 }
 
 type stringAddr struct {