From 3e137cb8fb4c2b8a048922b585d73601f47e3bcb Mon Sep 17 00:00:00 2001 From: ziyikee Date: Fri, 14 Apr 2023 08:02:15 +0000 Subject: [PATCH] =?UTF-8?q?=20=20pkg/rubik/servicemanager.go=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20Missing=20`RUnlock`=20on=20an=20`RWMutex`=20lock?= =?UTF-8?q?=20before=20returning=20from=20a=20function=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20163=E2=94=86=20return=20fmt.Errorf("fail=20to=20preSta?= =?UTF-8?q?rt=20service=20%v:=20%v",=20name,=20err)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: ziyikee --- pkg/rubik/servicemanager.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkg/rubik/servicemanager.go b/pkg/rubik/servicemanager.go index ba63b18..89bb121 100644 --- a/pkg/rubik/servicemanager.go +++ b/pkg/rubik/servicemanager.go @@ -153,6 +153,7 @@ func (manager *ServiceManager) Setup(v api.Viewer) error { var preStarted = make(map[string]services.Service, 0) manager.RLock() + defer manager.RUnlock() for name, s := range manager.RunningServices { /* Try to prestart the service. If any service fails, rubik exits @@ -165,7 +166,7 @@ func (manager *ServiceManager) Setup(v api.Viewer) error { preStarted[name] = s log.Infof("service %v pre-start successfully", name) } - manager.RUnlock() + return nil } -- Gitee