From acec8a76aaebb53ff22bbe395bb6bcd4bea88afc Mon Sep 17 00:00:00 2001 From: Alex X Date: Wed, 11 Oct 2023 14:26:02 +0300 Subject: [PATCH] Fix panic from roborock source (iot.Dial error) #601 --- pkg/roborock/client.go | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/pkg/roborock/client.go b/pkg/roborock/client.go index 5bd448c6..1d838710 100644 --- a/pkg/roborock/client.go +++ b/pkg/roborock/client.go @@ -6,16 +6,17 @@ import ( "encoding/json" "errors" "fmt" - "github.com/AlexxIT/go2rtc/pkg/core" - "github.com/AlexxIT/go2rtc/pkg/roborock/iot" - "github.com/AlexxIT/go2rtc/pkg/webrtc" - pion "github.com/pion/webrtc/v3" "log" "net/rpc" "net/url" "strconv" "sync" "time" + + "github.com/AlexxIT/go2rtc/pkg/core" + "github.com/AlexxIT/go2rtc/pkg/roborock/iot" + "github.com/AlexxIT/go2rtc/pkg/webrtc" + pion "github.com/pion/webrtc/v3" ) type Client struct { @@ -38,13 +39,15 @@ func NewClient(url string) *Client { return &Client{url: url} } -func (c *Client) Dial() (err error) { +func (c *Client) Dial() error { u, err := url.Parse(c.url) if err != nil { - return + return err } - c.iot, err = iot.Dial(c.url) + if c.iot, err = iot.Dial(c.url); err != nil { + return err + } c.pin = u.Query().Get("pin") if c.pin != "" {