diff options
-rw-r--r-- | Lib/httplib.py | 6 | ||||
-rw-r--r-- | Misc/ACKS | 1 |
2 files changed, 5 insertions, 2 deletions
diff --git a/Lib/httplib.py b/Lib/httplib.py index 72e8a72..01fc1ee 100644 --- a/Lib/httplib.py +++ b/Lib/httplib.py @@ -457,10 +457,11 @@ class HTTPResponse: if amt is None: # unbounded read - if self.will_close: + if self.length is None: s = self.fp.read() else: s = self._safe_read(self.length) + self.length = 0 self.close() # we read everything return s @@ -468,12 +469,13 @@ class HTTPResponse: if amt > self.length: # clip the read to the "end of response" amt = self.length - self.length -= amt # we do not use _safe_read() here because this may be a .will_close # connection, and the user is reading more bytes than will be provided # (for example, reading in 1k chunks) s = self.fp.read(amt) + if self.length is not None: + self.length -= len(s) return s @@ -302,6 +302,7 @@ Jiba Orjan Johansen Simon Johnston Richard Jones +Irmen de Jong Lucas de Jonge Jens B. Jorgensen John Jorgensen |