From e7c9bbb96f8cebe873e26bf2f5f306c130e98e7d Mon Sep 17 00:00:00 2001 From: Jeff Mancuso Date: Thu, 23 May 2013 11:21:29 -0400 Subject: [PATCH] Only switch to chunked if we don't know the length of a file like object. This fixes the case of trying to upload a 0-length file - chunked upload was being forced. Services like S3 that disallow chunked upload will fail. --- requests/models.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/requests/models.py b/requests/models.py index 6cf2aaa..d894d9f 100644 --- a/requests/models.py +++ b/requests/models.py @@ -364,7 +364,7 @@ class PreparedRequest(RequestEncodingMixin, RequestHooksMixin): try: length = super_len(data) except (TypeError, AttributeError): - length = False + length = None if is_stream: body = data @@ -372,7 +372,7 @@ class PreparedRequest(RequestEncodingMixin, RequestHooksMixin): if files: raise NotImplementedError('Streamed bodies and files are mutually exclusive.') - if length: + if length is not None: self.headers['Content-Length'] = str(length) else: self.headers['Transfer-Encoding'] = 'chunked' -- 2.7.4