mirror of
https://github.com/python/cpython.git
synced 2025-07-28 13:44:43 +00:00
Bug #767111: fix long-standing bug in urllib which caused an
AttributeError instead of an IOError when the server's response didn't contain a valid HTTP status line.
This commit is contained in:
parent
90fd76a2b4
commit
f66b6039c1
3 changed files with 21 additions and 0 deletions
|
@ -326,6 +326,10 @@ class URLopener:
|
|||
if data is not None:
|
||||
h.send(data)
|
||||
errcode, errmsg, headers = h.getreply()
|
||||
if errcode == -1:
|
||||
# something went wrong with the HTTP status line
|
||||
raise IOError, ('http protocol error', 0,
|
||||
'got a bad status line', None)
|
||||
fp = h.getfile()
|
||||
if errcode == 200:
|
||||
return addinfourl(fp, headers, "http:" + url)
|
||||
|
@ -413,6 +417,10 @@ class URLopener:
|
|||
if data is not None:
|
||||
h.send(data)
|
||||
errcode, errmsg, headers = h.getreply()
|
||||
if errcode == -1:
|
||||
# something went wrong with the HTTP status line
|
||||
raise IOError, ('http protocol error', 0,
|
||||
'got a bad status line', None)
|
||||
fp = h.getfile()
|
||||
if errcode == 200:
|
||||
return addinfourl(fp, headers, "https:" + url)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue