From 336f6e651b90504f20f7de47b3e71aaaf7091d15 Mon Sep 17 00:00:00 2001 From: Jim King Date: Thu, 13 Feb 2025 17:45:09 -0500 Subject: [PATCH] Properly handle CopyObject with content length 0 This fixes #8592 --- moto/s3/responses.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/moto/s3/responses.py b/moto/s3/responses.py index 310774c46727..bb24f3af3563 100644 --- a/moto/s3/responses.py +++ b/moto/s3/responses.py @@ -186,9 +186,9 @@ def setup_class(self, request: Any, full_url: str, headers: Any) -> None: # typ if ( not self.body and request.headers.get("Content-Encoding", "") == "aws-chunked" - and hasattr(request, "input_stream") + and hasattr(request, "stream") ): - self.body = request.input_stream.getvalue() + self.body = request.stream.read() if ( self.request.headers.get("x-amz-content-sha256") == "STREAMING-UNSIGNED-PAYLOAD-TRAILER"