]> Cypherpunks repositories - gostls13.git/commitdiff
net: fix garbage connection close in dual stack tests
authorMikio Hara <mikioh.mikioh@gmail.com>
Sat, 17 Aug 2013 04:40:55 +0000 (13:40 +0900)
committerMikio Hara <mikioh.mikioh@gmail.com>
Sat, 17 Aug 2013 04:40:55 +0000 (13:40 +0900)
This may possibly be the root cause of flaky dual stack tests.

Update #4176
Update #5001

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/13050043

src/pkg/net/unicast_posix_test.go

index cc63d1c4e18c13ea2a36a201b08b32c5d44601ea..5deb8f47c6c2de5422b6fed5f24c765aa3fb1040 100644 (file)
@@ -349,12 +349,16 @@ func checkDualStackSecondListener(t *testing.T, net, laddr string, xerr, err err
                if xerr == nil && err != nil || xerr != nil && err == nil {
                        t.Fatalf("Second Listen(%q, %q) returns %v, expected %v", net, laddr, err, xerr)
                }
-               l.(*TCPListener).Close()
+               if err == nil {
+                       l.(*TCPListener).Close()
+               }
        case "udp", "udp4", "udp6":
                if xerr == nil && err != nil || xerr != nil && err == nil {
                        t.Fatalf("Second ListenPacket(%q, %q) returns %v, expected %v", net, laddr, err, xerr)
                }
-               l.(*UDPConn).Close()
+               if err == nil {
+                       l.(*UDPConn).Close()
+               }
        default:
                t.Fatalf("Unexpected network: %q", net)
        }