diff --git a/client/control.go b/client/control.go index 1a8b8453..8e10bfac 100644 --- a/client/control.go +++ b/client/control.go @@ -172,7 +172,9 @@ func (ctl *Control) Close() error { ctl.mu.Lock() defer ctl.mu.Unlock() ctl.exit = true - ctl.conn.Close() + if ctl.conn != nil { + ctl.conn.Close() + } ctl.pm.CloseProxies() return nil } diff --git a/cmd/frpc/sub/root.go b/cmd/frpc/sub/root.go index 0c3e8dc5..7a8badcb 100644 --- a/cmd/frpc/sub/root.go +++ b/cmd/frpc/sub/root.go @@ -119,6 +119,7 @@ func StopFrp() (err error) { service.Close() log.Info("frpc is stoped") + os.Exit(0) return }