]> Cypherpunks repositories - gostls13.git/commitdiff
net: make Dial correctly return nil on error.
authorRoger Peppe <rogpeppe@gmail.com>
Tue, 5 Jan 2010 17:20:02 +0000 (09:20 -0800)
committerRuss Cox <rsc@golang.org>
Tue, 5 Jan 2010 17:20:02 +0000 (09:20 -0800)
R=rsc
CC=golang-dev
https://golang.org/cl/181135

src/pkg/net/net.go

index 5e6ba8c2017f51c7fc63aea95836ccef7ad9737e..2f145a72cbb4b45fe12b0ac75ec334156d3e5797 100644 (file)
@@ -134,7 +134,11 @@ func Dial(net, laddr, raddr string) (c Conn, err os.Error) {
                                goto Error
                        }
                }
-               return DialTCP(net, la, ra)
+               c, err := DialTCP(net, la, ra)
+               if err != nil {
+                       return nil, err
+               }
+               return c, nil
        case "udp", "udp4", "upd6":
                var la, ra *UDPAddr
                if laddr != "" {
@@ -147,7 +151,11 @@ func Dial(net, laddr, raddr string) (c Conn, err os.Error) {
                                goto Error
                        }
                }
-               return DialUDP(net, la, ra)
+               c, err := DialUDP(net, la, ra)
+               if err != nil {
+                       return nil, err
+               }
+               return c, nil
        case "unix", "unixgram":
                var la, ra *UnixAddr
                if raddr != "" {
@@ -160,7 +168,11 @@ func Dial(net, laddr, raddr string) (c Conn, err os.Error) {
                                goto Error
                        }
                }
-               return DialUnix(net, la, ra)
+               c, err = DialUnix(net, la, ra)
+               if err != nil {
+                       return nil, err
+               }
+               return c, nil
        }
        err = UnknownNetworkError(net)
 Error: