Skip to content

Commit ff1f078

Browse files
committed
Move return when connection is closed down.
1 parent e155ae2 commit ff1f078

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

service/listeners.go

+4-3
Original file line numberDiff line numberDiff line change
@@ -285,12 +285,10 @@ func (m *multiPacketListener) Acquire() (net.PacketConn, error) {
285285
m.readCh = make(chan readRequest)
286286
m.doneCh = make(chan struct{})
287287
go func() {
288+
defer close(m.readCh)
288289
buffer := make([]byte, serverUDPBufferSize)
289290
for {
290291
n, addr, err := m.pc.ReadFrom(buffer)
291-
if errors.Is(err, net.ErrClosed) {
292-
return
293-
}
294292
buffer = buffer[:n]
295293
select {
296294
case req := <-m.readCh:
@@ -303,6 +301,9 @@ func (m *multiPacketListener) Acquire() (net.PacketConn, error) {
303301
case <-m.doneCh:
304302
return
305303
}
304+
if errors.Is(err, net.ErrClosed) {
305+
return
306+
}
306307
}
307308
}()
308309
}

0 commit comments

Comments
 (0)