diff --git a/bridge/bridge.go b/bridge/bridge.go index 4a5b964..2188259 100755 --- a/bridge/bridge.go +++ b/bridge/bridge.go @@ -309,7 +309,7 @@ func (s *Bridge) SendLinkInfo(clientId int, link *conn.Link, linkAddr string) (t v.linkMap[link.Id] = link v.Unlock() if !s.waitStatus(clientId, link.Id) { - err = errors.New("connect fail") + err = errors.New(fmt.Sprintf("connect target %s fail", link.Host)) return } } else { diff --git a/lib/conn/link.go b/lib/conn/link.go index f0005b4..6e342c2 100644 --- a/lib/conn/link.go +++ b/lib/conn/link.go @@ -54,6 +54,9 @@ func (s *Link) Run(flow bool) { } return } else { + if s.Conn == nil { + return + } if s.UdpListener != nil && s.UdpRemoteAddr != nil { s.UdpListener.WriteToUDP(content, s.UdpRemoteAddr) } else {