summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin v. Löwis <martin@v.loewis.de>2008-02-12 18:48:23 +0000
committerMartin v. Löwis <martin@v.loewis.de>2008-02-12 18:48:23 +0000
commite9c996c14db994fb0afe806a0eee16a97b587fc1 (patch)
treeb3de06471c5008203ce3a38a64f1ad5651e1c1a1
parentcab74c8398cc83cc40feee189425274bc8722ba9 (diff)
downloadcpython-git-e9c996c14db994fb0afe806a0eee16a97b587fc1.tar.gz
Patch #1966: Break infinite loop in httplib when the servers
implements the chunked encoding incorrectly.
-rw-r--r--Lib/httplib.py4
-rw-r--r--Misc/NEWS3
2 files changed, 7 insertions, 0 deletions
diff --git a/Lib/httplib.py b/Lib/httplib.py
index 403e4eed00..137a9eaa8a 100644
--- a/Lib/httplib.py
+++ b/Lib/httplib.py
@@ -571,6 +571,10 @@ class HTTPResponse:
### note: we shouldn't have any trailers!
while True:
line = self.fp.readline()
+ if not line:
+ # a vanishingly small number of sites EOF without
+ # sending the trailer
+ break
if line == '\r\n':
break
diff --git a/Misc/NEWS b/Misc/NEWS
index ffb1771ff5..6ea4eeaec3 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -83,6 +83,9 @@ Core and builtins
Library
-------
+- Patch #1966: Break infinite loop in httplib when the servers
+ implements the chunked encoding incorrectly.
+
- tarfile.py: Fix reading of xstar archives.
- #2021: Allow tempfile.NamedTemporaryFile to be used in with statements