From 08d6833c1fd0c716716a96be5e4f6a14654d45d9 Mon Sep 17 00:00:00 2001 From: Eric Phillips Date: Tue, 26 May 2026 09:12:55 -0600 Subject: [PATCH] fixed unhandled errors --- internal/cache/refresh.go | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/internal/cache/refresh.go b/internal/cache/refresh.go index 9c6f8b5..c7db1d3 100644 --- a/internal/cache/refresh.go +++ b/internal/cache/refresh.go @@ -29,6 +29,7 @@ func (c *Cache) FetchDB(repo string) error { slog.Info("fetch returned", "url", url, "status", resp.StatusCode) return &UpstreamError{StatusCode: resp.StatusCode} } + //nolint:errcheck //best effort defer resp.Body.Close() tmpPath := dbPath + ".tmp" @@ -38,17 +39,25 @@ func (c *Cache) FetchDB(repo string) error { } if _, err := io.Copy(tmpFile, resp.Body); err != nil { - tmpFile.Close() - c.cr.Remove(tmpPath) + if err := tmpFile.Close(); err != nil { + slog.Error("failed to close file", "file", tmpPath, "err", err) + } + if err := c.cr.Remove(tmpPath); err != nil { + slog.Error("failed to remove file", "file", tmpPath, "err", err) + } return err } if err := tmpFile.Close(); err != nil { - c.cr.Remove(tmpPath) + if err := c.cr.Remove(tmpPath); err != nil { + slog.Error("failed to remove file", "file", tmpPath, "err", err) + } return err } if err := c.cr.Rename(tmpPath, dbPath); err != nil { - c.cr.Remove(tmpPath) + if err := c.cr.Remove(tmpPath); err != nil { + slog.Error("failed to remove file", "file", tmpPath, "err", err) + } slog.Error("failed to move tmpfile to permanent file", "file", tmpFile, "err", err) return err }