]> Sergey Matveev's repositories - btrtrc.git/commitdiff
Close data channel on offer init errors
authorMatt Joiner <anacrolix@gmail.com>
Tue, 12 Jul 2022 01:46:03 +0000 (11:46 +1000)
committerMatt Joiner <anacrolix@gmail.com>
Tue, 12 Jul 2022 06:15:51 +0000 (16:15 +1000)
webtorrent/tracker-client.go
webtorrent/transport.go

index b0ca6c2c35289de8bcb89864fc4e1a1db2cf33b2..195c06b033dee4c1bf743b64df37a6ad38ea859f 100644 (file)
@@ -234,6 +234,7 @@ func (tc *TrackerClient) Announce(event tracker.AnnounceEvent, infoHash [20]byte
                }},
        })
        if err != nil {
+               dc.Close()
                pc.Close()
        }
        return err
index 852990860e00d9e27b0b4a81d26a2d4c90647e64..d60fb7a7028e5bbd28821b567b1c828d83ebaefb 100644 (file)
@@ -127,12 +127,14 @@ func (tc *TrackerClient) newOffer(
 
        offer, err = peerConnection.CreateOffer(nil)
        if err != nil {
+               dataChannel.Close()
                peerConnection.Close()
                return
        }
 
        offer, err = setAndGatherLocalDescription(peerConnection, offer)
        if err != nil {
+               dataChannel.Close()
                peerConnection.Close()
        }
        return