diff --git a/origin/tunnel.go b/origin/tunnel.go index 6f0bd2b4..4b5edefa 100644 --- a/origin/tunnel.go +++ b/origin/tunnel.go @@ -323,8 +323,13 @@ func ServeTunnel( }) errGroup.Go(func() error { - <-reconnectCh - return fmt.Errorf("received disconnect signal") + select { + case <-reconnectCh: + return fmt.Errorf("received disconnect signal") + case <-serveCtx.Done(): + return nil + } + }) errGroup.Go(func() error {