diff --git a/error.go b/error.go index 8a59913be..b45bfcf30 100644 --- a/error.go +++ b/error.go @@ -129,7 +129,18 @@ func isMovedError(err error) (moved bool, ask bool, addr string) { if ind == -1 { return false, false, "" } + addr = s[ind+1:] + ind = strings.LastIndex(addr, ":") + if ind == -1 { + return false, false, "" + } + + if string(addr[ind-1]) == "]" { + return + } + + addr = net.JoinHostPort(addr[:ind], addr[ind+1:]) return }