commit | 0ed405f0b758c1e8a371efd85c512964ecd5b572 | [log] [tgz] |
---|---|---|
author | Robin Thellend <rthellend@google.com> | Tue Oct 28 16:06:01 2014 -0700 |
committer | Robin Thellend <rthellend@google.com> | Tue Oct 28 16:06:01 2014 -0700 |
tree | bc76eb498067514d21d278871a161c5603f29dd2 | |
parent | 84a11523507c177f77eebd097545792522b2d63e [diff] |
veyron/runtimes/google/ipc/stream/vif: Fix race between close and accept Make sure that accept always happens before close. This fixes https://code.google.com/p/envyor/issues/detail?id=363 Change-Id: I9d75f34bc9ce5fa37a52c80a979bb2600ace80dc
diff --git a/runtimes/google/ipc/stream/vif/vif_test.go b/runtimes/google/ipc/stream/vif/vif_test.go index bcaa37a..92d59d6 100644 --- a/runtimes/google/ipc/stream/vif/vif_test.go +++ b/runtimes/google/ipc/stream/vif/vif_test.go
@@ -240,6 +240,7 @@ if err != nil { t.Fatal(err) } + serverFlow := acceptFlowAtServer(server) var message = []byte("bugs bunny") go func() { @@ -249,7 +250,6 @@ client.Close() }() - serverFlow := acceptFlowAtServer(server) buf := make([]byte, 1024) // client.Close should drain all pending writes first. if n, err := serverFlow.Read(buf); n != len(message) || err != nil {