From 400fc166b2c6caf8765c7f17140218082f7a4c7a Mon Sep 17 00:00:00 2001 From: Liang Ding Date: Wed, 28 Sep 2022 11:38:40 +0800 Subject: [PATCH] =?UTF-8?q?:bug:=20=E6=A1=8C=E9=9D=A2=E7=AB=AF=E6=8B=89?= =?UTF-8?q?=E8=B5=B7=E8=87=AA=E5=8A=A8=E6=9B=B4=E6=96=B0=E5=AE=89=E8=A3=85?= =?UTF-8?q?=E5=8C=85=E5=81=B6=E5=B0=94=E5=A4=B1=E8=B4=A5=20Fix=20https://g?= =?UTF-8?q?ithub.com/siyuan-note/siyuan/issues/5996?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kernel/model/conf.go | 5 +++++ kernel/model/updater.go | 3 +-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/kernel/model/conf.go b/kernel/model/conf.go index cd2145592..b66b8333f 100644 --- a/kernel/model/conf.go +++ b/kernel/model/conf.go @@ -379,6 +379,7 @@ func Close(force bool, execInstallPkg int) (exitCode int) { // return true //}) + waitSecondForExecInstallPkg := false if !skipNewVerInstallPkg() { newVerInstallPkgPath := getNewVerInstallPkgPath() if "" != newVerInstallPkgPath { @@ -387,6 +388,7 @@ func Close(force bool, execInstallPkg int) (exitCode int) { logging.LogInfof("the new version install pkg is ready [%s], waiting for the user's next instruction", newVerInstallPkgPath) return } else if 2 == execInstallPkg { // 执行新版本安装 + waitSecondForExecInstallPkg = true go execNewVerInstallPkg(newVerInstallPkgPath) } } @@ -398,6 +400,9 @@ func Close(force bool, execInstallPkg int) (exitCode int) { go func() { time.Sleep(500 * time.Millisecond) + if waitSecondForExecInstallPkg { + time.Sleep(1 * time.Second) + } logging.LogInfof("exited kernel") util.WebSocketServer.Close() os.Exit(util.ExitCodeOk) diff --git a/kernel/model/updater.go b/kernel/model/updater.go index 26b3c9e91..37eb39e16 100644 --- a/kernel/model/updater.go +++ b/kernel/model/updater.go @@ -46,12 +46,11 @@ func execNewVerInstallPkg(newVerInstallPkgPath string) { cmd = exec.Command("sh", "-c", newVerInstallPkgPath) } util.CmdAttr(cmd) - data, cmdErr := cmd.CombinedOutput() + cmdErr := cmd.Start() if nil != cmdErr { logging.LogErrorf("exec install new version failed: %s", cmdErr) return } - logging.LogInfof("installed new version output [%s]", data) } func getNewVerInstallPkgPath() string {