ソースを参照

refactor(qr): move ticker to local scope

ayn2op 4 ヶ月 前
コミット
67887cec22
1 ファイル変更2 行追加8 行削除
  1. 2 8
      internal/login/qr.go

+ 2 - 8
internal/login/qr.go

@@ -200,13 +200,6 @@ func (q *qrLogin) run(ctx context.Context) {
 		}
 	}()
 
-	var heartbeatTicker *time.Ticker
-	defer func() {
-		if heartbeatTicker != nil {
-			heartbeatTicker.Stop()
-		}
-	}()
-
 	for {
 		select {
 		case <-ctx.Done():
@@ -237,8 +230,9 @@ func (q *qrLogin) run(ctx context.Context) {
 					return
 				}
 				if h.HeartbeatInterval > 0 {
-					heartbeatTicker = time.NewTicker(time.Duration(h.HeartbeatInterval) * time.Millisecond)
+					heartbeatTicker := time.NewTicker(time.Duration(h.HeartbeatInterval) * time.Millisecond)
 					go func() {
+						defer heartbeatTicker.Stop()
 						for {
 							select {
 							case <-ctx.Done():