From 64b1a223cc733693525e73540179f89c8989eb90 Mon Sep 17 00:00:00 2001 From: Ink-33 Date: Wed, 18 Nov 2020 22:46:52 +0800 Subject: [PATCH] Fix #427 --- main.go | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/main.go b/main.go index da2ac3d..c0f9802 100644 --- a/main.go +++ b/main.go @@ -2,7 +2,6 @@ package main import ( "bufio" - "context" "crypto/md5" "encoding/base64" "encoding/json" @@ -236,19 +235,19 @@ func main() { if conf.PasswordEncrypted != "" { if strKey == "" { log.Infof("密码加密已启用, 请输入Key对密码进行解密以继续: (Enter 提交)") - ctx := context.Background() - go func(ctx context.Context) { + cancel := make(chan struct{}, 1) + go func() { select { - case <-ctx.Done(): + case <-cancel: return case <-time.After(time.Second * 45): log.Infof("解密key输入超时") time.Sleep(3 * time.Second) os.Exit(0) } - }(ctx) + }() strKey, _ = console.ReadString('\n') - ctx.Done() + cancel <- struct{}{} } else { log.Infof("密码加密已启用, 使用运行时传递的参数进行解密,按 Ctrl+C 取消.") }