sqlite: fix accidental modification of path when checking
1 file changed, 9 insertions(+), 4 deletions(-)
changed files
M internal/storage/sqlite/reader.go → internal/storage/sqlite/reader.go
@@ -110,20 +110,25 @@ differs = false case strings.HasSuffix(path, "/index.html"): cPath, differs = strings.CutSuffix(path, "index.html") case !strings.HasSuffix(path, "/"): - cPath += "/" - err := r.queries.checkPath.QueryRow(cPath).Scan(&differs) + err := r.queries.checkPath.QueryRow(cPath + "/").Scan(&differs) if err != nil { r.log.Warn("error canonicalising path", "path", path, "error", err) return } + if differs { + cPath += "/" + } case strings.HasSuffix(path, "/"): - cPath = strings.TrimSuffix(path, "/") - err := r.queries.checkPath.QueryRow(cPath).Scan(&differs) + tmp := strings.TrimSuffix(path, "/") + err := r.queries.checkPath.QueryRow(tmp).Scan(&differs) if err != nil { r.log.Warn("error canonicalising path", "path", path, "error", err) return + } + if differs { + cPath = tmp } }