]> Cypherpunks repositories - gostls13.git/commitdiff
net: remove duplicate error information in Dial
authorAndrey Mirtchovski <mirtchovski@gmail.com>
Tue, 18 Oct 2011 18:51:40 +0000 (14:51 -0400)
committerRuss Cox <rsc@golang.org>
Tue, 18 Oct 2011 18:51:40 +0000 (14:51 -0400)
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/5293045

src/pkg/net/dial.go
src/pkg/net/net_test.go

index 10c67dcc40a1ca6853700cd2c4740c7cb1ec8cf8..85d54b3703cd2de1e2c051bf37a9224f3ee90f00 100644 (file)
@@ -59,10 +59,10 @@ func Dial(net, addr string) (c Conn, err os.Error) {
        case *IPAddr:
                c, err = DialIP(net, nil, ra)
        default:
-               err = UnknownNetworkError(net)
+               err = &OpError{"dial", net + " " + addr, nil, UnknownNetworkError(net)}
        }
        if err != nil {
-               return nil, &OpError{"dial", net + " " + addr, nil, err}
+               return nil, err
        }
        return
 }
index e4d7a253e207291b57e3a73edd143e598d9ad74a..3754bc90b3318ee6d16795aedbfb24dcea8b3caa 100644 (file)
@@ -62,6 +62,8 @@ var dialErrorTests = []DialErrorTest{
        },
 }
 
+var duplicateErrorPattern = `dial (.*) dial (.*)`
+
 func TestDialError(t *testing.T) {
        if !*runErrorTest {
                t.Logf("test disabled; use --run_error_test to enable")
@@ -81,6 +83,10 @@ func TestDialError(t *testing.T) {
                if !match {
                        t.Errorf("#%d: %q, want match for %#q", i, s, tt.Pattern)
                }
+               match, _ = regexp.MatchString(duplicateErrorPattern, s)
+               if match {
+                       t.Errorf("#%d: %q, duplicate error return from Dial", i, s)
+               }
        }
 }