]> Cypherpunks repositories - gostls13.git/commit
net: fix data race in TestClosingListener
authorDaniel Martí <mvdan@mvdan.cc>
Thu, 12 Oct 2017 10:57:36 +0000 (11:57 +0100)
committerDaniel Martí <mvdan@mvdan.cc>
Fri, 13 Oct 2017 15:19:59 +0000 (15:19 +0000)
commit0e4de78d132677268d307f307c33831e17703195
tree3722579874d41a3d7a1acbb1721345aaadf4e010
parent743117a85e17070dcae010a14c6c1012bba298b0
net: fix data race in TestClosingListener

In https://golang.org/cl/66334, the test was changed so that the second
Listen would also be closed. However, it shouldn't have reused the same
ln variable, as that can lead to a data race with the background loop
that accepts connections.

Simply define a new Listener, since we don't need to overwrite the first
variable.

I was able to reproduce the data race report locally about 10% of the
time by reducing the sleep from a millisecond to a nanosecond. After the
fix, it's entirely gone after 1000 runs.

Fixes #22226.

Change-Id: I7c639f9f2ee5098eac951a45f42f97758654eacd
Reviewed-on: https://go-review.googlesource.com/70230
Run-TryBot: Daniel Martí <mvdan@mvdan.cc>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
src/net/listen_test.go