diff --git a/internal/bucket/gcp/gcp.go b/internal/bucket/gcp/gcp.go index 7467d5c56..8ccf4f17e 100644 --- a/internal/bucket/gcp/gcp.go +++ b/internal/bucket/gcp/gcp.go @@ -282,6 +282,9 @@ func (c *GCSClient) FGetObject(ctx context.Context, bucketName, objectName, loca GenerationMatch: objAttr.Generation, }).NewReader(ctx) if err != nil { + if cerr := objectFile.Close(); cerr != nil { + ctrl.LoggerFrom(ctx).Error(cerr, "failed to close file after reader error") + } return "", err } defer func() { @@ -292,6 +295,9 @@ func (c *GCSClient) FGetObject(ctx context.Context, bucketName, objectName, loca // Write Object to file. if _, err := io.Copy(objectFile, objectReader); err != nil { + if cerr := objectFile.Close(); cerr != nil { + ctrl.LoggerFrom(ctx).Error(cerr, "failed to close file after copy error") + } return "", err }