diff --git a/shell/point/inbound_detour_dynamic.go b/shell/point/inbound_detour_dynamic.go index e32500c5..13c846e3 100644 --- a/shell/point/inbound_detour_dynamic.go +++ b/shell/point/inbound_detour_dynamic.go @@ -102,9 +102,9 @@ func (this *InboundDetourHandlerDynamic) refresh() error { this.ichs = newIchs this.Unlock() - go func() { + go func(recycles []proxy.InboundHandler) { time.Sleep(time.Minute) - for _, ich := range ich2Recycle { + for _, ich := range recycles { if ich == nil { continue } @@ -112,8 +112,7 @@ func (this *InboundDetourHandlerDynamic) refresh() error { ich.Close() delete(this.portsInUse, port) } - ich2Recycle = nil - }() + }(ich2Recycle) return nil }