Loading proxy-go/snowflake.go +6 −5 Original line number Original line Diff line number Diff line Loading @@ -76,7 +76,7 @@ func (c *webRTCConn) Write(b []byte) (int, error) { } } func (c *webRTCConn) Close() error { func (c *webRTCConn) Close() error { return c.pc.Close() return c.pc.Destroy() } } func (c *webRTCConn) LocalAddr() net.Addr { func (c *webRTCConn) LocalAddr() net.Addr { Loading Loading @@ -271,6 +271,7 @@ func makePeerConnectionFromOffer(sdp *webrtc.SessionDescription, config *webrtc. dc.OnClose = func() { dc.OnClose = func() { log.Println("OnClose channel") log.Println("OnClose channel") pw.Close() pw.Close() pc.DeleteDataChannel(dc) } } dc.OnMessage = func(msg []byte) { dc.OnMessage = func(msg []byte) { log.Printf("OnMessage <--- %d bytes", len(msg)) log.Printf("OnMessage <--- %d bytes", len(msg)) Loading @@ -289,7 +290,7 @@ func makePeerConnectionFromOffer(sdp *webrtc.SessionDescription, config *webrtc. err = pc.SetRemoteDescription(sdp) err = pc.SetRemoteDescription(sdp) if err != nil { if err != nil { pc.Close() pc.Destroy() return nil, fmt.Errorf("accept: SetRemoteDescription: %s", err) return nil, fmt.Errorf("accept: SetRemoteDescription: %s", err) } } log.Println("sdp offer successfully received.") log.Println("sdp offer successfully received.") Loading @@ -311,11 +312,11 @@ func makePeerConnectionFromOffer(sdp *webrtc.SessionDescription, config *webrtc. // Wait until answer is ready. // Wait until answer is ready. select { select { case err = <-errChan: case err = <-errChan: pc.Close() pc.Destroy() return nil, err return nil, err case _, ok := <-answerChan: case _, ok := <-answerChan: if !ok { if !ok { pc.Close() pc.Destroy() return nil, fmt.Errorf("Failed gathering ICE candidates.") return nil, fmt.Errorf("Failed gathering ICE candidates.") } } } } Loading @@ -338,7 +339,7 @@ func runSession(sid string) { err = sendAnswer(sid, pc) err = sendAnswer(sid, pc) if err != nil { if err != nil { log.Printf("error sending answer to client through broker: %s", err) log.Printf("error sending answer to client through broker: %s", err) pc.Close() pc.Destroy() retToken() retToken() return return } } Loading Loading
proxy-go/snowflake.go +6 −5 Original line number Original line Diff line number Diff line Loading @@ -76,7 +76,7 @@ func (c *webRTCConn) Write(b []byte) (int, error) { } } func (c *webRTCConn) Close() error { func (c *webRTCConn) Close() error { return c.pc.Close() return c.pc.Destroy() } } func (c *webRTCConn) LocalAddr() net.Addr { func (c *webRTCConn) LocalAddr() net.Addr { Loading Loading @@ -271,6 +271,7 @@ func makePeerConnectionFromOffer(sdp *webrtc.SessionDescription, config *webrtc. dc.OnClose = func() { dc.OnClose = func() { log.Println("OnClose channel") log.Println("OnClose channel") pw.Close() pw.Close() pc.DeleteDataChannel(dc) } } dc.OnMessage = func(msg []byte) { dc.OnMessage = func(msg []byte) { log.Printf("OnMessage <--- %d bytes", len(msg)) log.Printf("OnMessage <--- %d bytes", len(msg)) Loading @@ -289,7 +290,7 @@ func makePeerConnectionFromOffer(sdp *webrtc.SessionDescription, config *webrtc. err = pc.SetRemoteDescription(sdp) err = pc.SetRemoteDescription(sdp) if err != nil { if err != nil { pc.Close() pc.Destroy() return nil, fmt.Errorf("accept: SetRemoteDescription: %s", err) return nil, fmt.Errorf("accept: SetRemoteDescription: %s", err) } } log.Println("sdp offer successfully received.") log.Println("sdp offer successfully received.") Loading @@ -311,11 +312,11 @@ func makePeerConnectionFromOffer(sdp *webrtc.SessionDescription, config *webrtc. // Wait until answer is ready. // Wait until answer is ready. select { select { case err = <-errChan: case err = <-errChan: pc.Close() pc.Destroy() return nil, err return nil, err case _, ok := <-answerChan: case _, ok := <-answerChan: if !ok { if !ok { pc.Close() pc.Destroy() return nil, fmt.Errorf("Failed gathering ICE candidates.") return nil, fmt.Errorf("Failed gathering ICE candidates.") } } } } Loading @@ -338,7 +339,7 @@ func runSession(sid string) { err = sendAnswer(sid, pc) err = sendAnswer(sid, pc) if err != nil { if err != nil { log.Printf("error sending answer to client through broker: %s", err) log.Printf("error sending answer to client through broker: %s", err) pc.Close() pc.Destroy() retToken() retToken() return return } } Loading