diff --git a/server/settings/jsondb.go b/server/settings/jsondb.go index 6185edb..a99061e 100644 --- a/server/settings/jsondb.go +++ b/server/settings/jsondb.go @@ -41,7 +41,6 @@ func (v *JsonDB) CloseDB() { func (v *JsonDB) Set(xPath, name string, value []byte) { var err error = nil jsonObj := map[string]interface{}{} - if err := json.Unmarshal(value, &jsonObj); err == nil { if filename, err := v.xPathToFilename(xPath); err == nil { v.lock(filename) @@ -101,8 +100,9 @@ func (v *JsonDB) Rem(xPath, name string) { defer v.unlock(filename) if root, err := v.readJsonFileAsMap(filename); err == nil { delete(root, name) - v.writeMapAsJsonFile(filename, root) - return + if err = v.writeMapAsJsonFile(filename, root); err == nil { + return + } } } v.log(fmt.Sprintf("Rem: error removing entry %s->%s", xPath, name), err) @@ -135,7 +135,9 @@ func (v *JsonDB) readJsonFileAsMap(filename string) (map[string]interface{}, err jsonData := map[string]interface{}{} path := filepath.Join(v.Path, filename) if fileData, err := os.ReadFile(path); err == nil { - err = json.Unmarshal(fileData, &jsonData) + if err = json.Unmarshal(fileData, &jsonData); err != nil { + v.log(fmt.Sprintf("readJsonFileAsMap fileData: %s error", fileData), err) + } } return jsonData, err } @@ -143,9 +145,10 @@ func (v *JsonDB) readJsonFileAsMap(filename string) (map[string]interface{}, err func (v *JsonDB) writeMapAsJsonFile(filename string, o map[string]interface{}) error { var err error = nil path := filepath.Join(v.Path, filename) - if fileData, err := json.MarshalIndent(o, "", " "); err == nil { - err = os.WriteFile(path, fileData, v.fileMode) + if err = os.WriteFile(path, fileData, v.fileMode); err != nil { + v.log(fmt.Sprintf("writeMapAsJsonFile path: %s, fileMode: %s, fileData: %s error", path, v.fileMode, fileData), err) + } } return err } diff --git a/server/settings/settings.go b/server/settings/settings.go index 7e44949..d3e640a 100644 --- a/server/settings/settings.go +++ b/server/settings/settings.go @@ -1,7 +1,6 @@ package settings import ( - "fmt" "os" "path/filepath" @@ -49,7 +48,7 @@ func InitSets(readOnly, searchWA bool) { // We migrate settings here, it must be done before loadBTSets() if err := Migrate2(bboltDB, jsonDB); err != nil { - log.TLogln(fmt.Sprintf("Migrate2 failed")) + log.TLogln("Migrate2 failed") os.Exit(1) } loadBTSets() diff --git a/server/settings/viewed.go b/server/settings/viewed.go index bf02562..4cc1643 100644 --- a/server/settings/viewed.go +++ b/server/settings/viewed.go @@ -93,8 +93,6 @@ func ListViewed(hash string) []*Viewed { return ret } - if err != nil { - log.TLogln("Error list viewed:", err) - } + log.TLogln("Error list viewed:", err) return []*Viewed{} } diff --git a/server/web/msx/msx.go b/server/web/msx/msx.go index 4fcf47b..b29cffd 100644 --- a/server/web/msx/msx.go +++ b/server/web/msx/msx.go @@ -43,7 +43,7 @@ var start = struct { func SetupRoute(r gin.IRouter) { authorized := r.Group("/", auth.CheckAuth()) - //MSX: + // MSX: authorized.Any("/msx/*pth", func(c *gin.Context) { switch p := strings.TrimPrefix(c.Param("pth"), "/"); p { case "start.json": @@ -64,7 +64,7 @@ func SetupRoute(r gin.IRouter) { } } }) - //files: + // files: authorized.GET("/files", func(c *gin.Context) { if l, e := os.Readlink(files); e == nil || os.IsNotExist(e) { c.JSON(200, l) @@ -85,7 +85,7 @@ func SetupRoute(r gin.IRouter) { } }) authorized.StaticFS("/files/", gin.Dir(files, true)) - //IMDB: + // IMDB: authorized.GET("/imdb/:id", func(c *gin.Context) { i, l, j := strings.TrimPrefix(c.Param("id"), "/"), "", false if j = strings.HasSuffix(i, ".json"); !j { @@ -148,6 +148,7 @@ func trnGet(h string) (st, sc string) { } return } + func response(c *gin.Context, a any) { var r struct { R struct { @@ -165,6 +166,7 @@ func response(c *gin.Context, a any) { r.R.T = http.StatusText(r.R.S) c.JSON(200, &r) } + func torrent(c *gin.Context) { if c.Request.Method != "POST" { r := false