From 7d69943c17614bcf6733ff0b3206374d272e274b Mon Sep 17 00:00:00 2001 From: anon5 Date: Sun, 28 Feb 2021 18:54:41 +0000 Subject: rudp: fix errors returned by Peer.Recv other than net.ErrClosed when the Peer is closed --- rudp/send.go | 3 +++ 1 file changed, 3 insertions(+) (limited to 'rudp/send.go') diff --git a/rudp/send.go b/rudp/send.go index 2615c59..ce3f013 100644 --- a/rudp/send.go +++ b/rudp/send.go @@ -205,6 +205,9 @@ func (p *Peer) sendRel(pkt rawPkt) (ack <-chan struct{}, err error) { select { case <-time.After(500 * time.Millisecond): if _, err := p.sendRaw(relpkt); err != nil { + if errors.Is(err, net.ErrClosed) { + return + } p.errs <- fmt.Errorf("failed to re-send timed out reliable seqnum: %d: %w", sn, err) } case <-ack: -- cgit v1.2.3