- commit
- 894e7de
- parent
- 9410239
- author
- Eric Bower
- date
- 2025-01-25 20:35:46 -0500 EST
fix(pgs): close any open readers
2 files changed,
+7,
-3
+5,
-2
1@@ -236,8 +236,8 @@ func (h *UploadAssetHandler) findDenylist(bucket sst.Bucket, project *db.Project
2 if err != nil {
3 return "", fmt.Errorf("_pgs_ignore not found")
4 }
5-
6 defer fp.Close()
7+
8 buf := new(strings.Builder)
9 _, err = io.Copy(buf, fp)
10 if err != nil {
11@@ -306,11 +306,14 @@ func (h *UploadAssetHandler) Write(s ssh.Session, entry *sendutils.FileEntry) (s
12 // calculate the filsize difference between the same file already
13 // stored and the updated file being uploaded
14 assetFilename := shared.GetAssetFileName(entry)
15- _, info, _ := h.Storage.GetObject(bucket, assetFilename)
16+ obj, info, _ := h.Storage.GetObject(bucket, assetFilename)
17 var curFileSize int64
18 if info != nil {
19 curFileSize = info.Size
20 }
21+ if obj != nil {
22+ defer obj.Close()
23+ }
24
25 denylist := getDenylist(s)
26 if denylist == nil {
+2,
-1
1@@ -85,10 +85,11 @@ func (h *ApiAssetHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
2 // before redirecting, this saves a hop that will just end up a 404
3 if !hasProtocol(fp.Filepath) && strings.HasSuffix(fp.Filepath, "/") {
4 next := filepath.Join(h.ProjectDir, fp.Filepath, "index.html")
5- _, _, err := h.Storage.GetObject(h.Bucket, next)
6+ obj, _, err := h.Storage.GetObject(h.Bucket, next)
7 if err != nil {
8 continue
9 }
10+ defer obj.Close()
11 }
12 logger.Info(
13 "redirecting request",