diff options
Diffstat (limited to 'internal/api')
-rw-r--r-- | internal/api/client/fileserver/servefile.go | 9 | ||||
-rw-r--r-- | internal/api/model/content.go | 2 |
2 files changed, 4 insertions, 7 deletions
diff --git a/internal/api/client/fileserver/servefile.go b/internal/api/client/fileserver/servefile.go index 236a2d8ac..e4eca770f 100644 --- a/internal/api/client/fileserver/servefile.go +++ b/internal/api/client/fileserver/servefile.go @@ -20,7 +20,6 @@ package fileserver import ( "fmt" - "io" "net/http" "strconv" @@ -86,12 +85,10 @@ func (m *FileServer) ServeFile(c *gin.Context) { } defer func() { - // if the content is a ReadCloser (ie., it's streamed from storage), close it when we're done + // close content when we're done if content.Content != nil { - if closer, ok := content.Content.(io.ReadCloser); ok { - if err := closer.Close(); err != nil { - log.Errorf("ServeFile: error closing readcloser: %s", err) - } + if err := content.Content.Close(); err != nil { + log.Errorf("ServeFile: error closing readcloser: %s", err) } } }() diff --git a/internal/api/model/content.go b/internal/api/model/content.go index aa02a99c3..ecce07356 100644 --- a/internal/api/model/content.go +++ b/internal/api/model/content.go @@ -30,7 +30,7 @@ type Content struct { // ContentLength in bytes ContentLength int64 // Actual content - Content io.Reader + Content io.ReadCloser // Resource URL to forward to if the file can be fetched from the storage directly (e.g signed S3 URL) URL *url.URL } |