diff options
author | Nadeem Vawda <nadeem.vawda@gmail.com> | 2012-10-21 15:37:43 (GMT) |
---|---|---|
committer | Nadeem Vawda <nadeem.vawda@gmail.com> | 2012-10-21 15:37:43 (GMT) |
commit | bd26b5463eb4547a2c679e562180364b0767cf32 (patch) | |
tree | b1fa315fc81dc57e52d772912cbbfcee721dc112 /Lib/urllib | |
parent | ca4a52513bf7d08d4ba26b18d9cba4afd5c02176 (diff) | |
download | cpython-bd26b5463eb4547a2c679e562180364b0767cf32.zip cpython-bd26b5463eb4547a2c679e562180364b0767cf32.tar.gz cpython-bd26b5463eb4547a2c679e562180364b0767cf32.tar.bz2 |
Issue #12692: Fix resource leak in urllib.request.
Diffstat (limited to 'Lib/urllib')
-rw-r--r-- | Lib/urllib/request.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/Lib/urllib/request.py b/Lib/urllib/request.py index 88f3ce1..250d89e 100644 --- a/Lib/urllib/request.py +++ b/Lib/urllib/request.py @@ -1255,6 +1255,12 @@ class AbstractHTTPHandler(BaseHandler): raise URLError(err) else: r = h.getresponse() + # If the server does not send us a 'Connection: close' header, + # HTTPConnection assumes the socket should be left open. Manually + # mark the socket to be closed when this response object goes away. + if h.sock: + h.sock.close() + h.sock = None r.url = req.get_full_url() # This line replaces the .msg attribute of the HTTPResponse |