From: Matt Joiner Date: Thu, 16 Apr 2020 00:27:17 +0000 (+1000) Subject: Fix crash with conventional trackers when tcp and utp are disabled X-Git-Tag: v1.16.0~80 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=d4430e89b6888a433c262a16bb4a22eaa47c45c3;p=btrtrc.git Fix crash with conventional trackers when tcp and utp are disabled Fixes #396. --- diff --git a/client.go b/client.go index 98c87171..da45ec09 100644 --- a/client.go +++ b/client.go @@ -1323,13 +1323,15 @@ func (cl *Client) publicIp(peer net.IP) net.IP { } func (cl *Client) findListenerIp(f func(net.IP) bool) net.IP { - return addrIpOrNil( - cl.findListener( - func(l net.Listener) bool { - return f(addrIpOrNil(l.Addr())) - }, - ).Addr(), + l := cl.findListener( + func(l net.Listener) bool { + return f(addrIpOrNil(l.Addr())) + }, ) + if l == nil { + return nil + } + return addrIpOrNil(l.Addr()) } // Our IP as a peer should see it.