From caa15430239770cc845b0677ca3dcc5a13f2b2d9 Mon Sep 17 00:00:00 2001 From: YouROK <8YouROK8@mail.ru> Date: Mon, 6 Feb 2023 22:45:07 +0300 Subject: [PATCH] fix double load rutor db --- server/rutor/rutor.go | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/server/rutor/rutor.go b/server/rutor/rutor.go index 7fe41e3..016991a 100644 --- a/server/rutor/rutor.go +++ b/server/rutor/rutor.go @@ -28,8 +28,9 @@ var ( func Start() { go func() { if settings.BTsets.EnableRutorSearch { - loadDB() - updateDB() + if !updateDB() { + loadDB() + } isStop = false for !isStop { for i := 0; i < 3*60*60; i++ { @@ -53,27 +54,27 @@ func Stop() { } // https://github.com/yourok-0001/releases/raw/master/torr/rutor.ls -func updateDB() { +func updateDB() bool { log.TLogln("Update rutor db") fnTmp := filepath.Join(settings.Path, "rutor.tmp") out, err := os.Create(fnTmp) if err != nil { log.TLogln("Error create file rutor.tmp:", err) - return + return false } resp, err := http.Get("https://github.com/yourok-0001/releases/raw/master/torr/rutor.ls") if err != nil { log.TLogln("Error connect to rutor db:", err) out.Close() - return + return false } defer resp.Body.Close() _, err = io.Copy(out, resp.Body) out.Close() if err != nil { log.TLogln("Error download rutor db:", err) - return + return false } fnOrig := filepath.Join(settings.Path, "rutor.ls") @@ -84,17 +85,19 @@ func updateDB() { err = os.Remove(fnOrig) if err != nil && !os.IsNotExist(err) { log.TLogln("Error remove old rutor db:", err) - return + return false } err = os.Rename(fnTmp, fnOrig) if err != nil { log.TLogln("Error rename rutor db:", err) - return + return false } loadDB() + return true } else { os.Remove(fnTmp) } + return false } func loadDB() {