Browse Source

decryptedReader will now be properly closed after use

pull/7481/head
chrislu 2 weeks ago
parent
commit
b6392843f6
  1. 9
      weed/s3api/s3api_object_handlers.go

9
weed/s3api/s3api_object_handlers.go

@ -1114,6 +1114,15 @@ func (s3a *S3ApiServer) streamFromVolumeServersWithSSE(w http.ResponseWriter, r
return fmt.Errorf("failed to create decrypted reader: %w", err)
}
// Close the decrypted reader to avoid leaking HTTP bodies
if closer, ok := decryptedReader.(io.Closer); ok {
defer func() {
if closeErr := closer.Close(); closeErr != nil {
glog.V(3).Infof("Error closing decrypted reader: %v", closeErr)
}
}()
}
// Stream full decrypted object to client
tCopy := time.Now()
buf := make([]byte, 128*1024)

Loading…
Cancel
Save